Coverage Report

Created: 2024-05-20 07:14

/src/skia/third_party/externals/harfbuzz/src/hb-array.hh
Line
Count
Source (jump to first uncovered line)
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
36
template <typename Type>
37
struct hb_sorted_array_t;
38
39
enum hb_not_found_t
40
{
41
  HB_NOT_FOUND_DONT_STORE,
42
  HB_NOT_FOUND_STORE,
43
  HB_NOT_FOUND_STORE_CLOSEST,
44
};
45
46
47
template <typename Type>
48
struct hb_array_t : hb_iter_with_fallback_t<hb_array_t<Type>, Type&>
49
{
50
  static constexpr bool realloc_move = true;
51
52
  /*
53
   * Constructors.
54
   */
55
0
  hb_array_t () = default;
Unexecuted instantiation: hb_array_t<char const>::hb_array_t()
Unexecuted instantiation: hb_array_t<int>::hb_array_t()
Unexecuted instantiation: hb_array_t<unsigned char const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::Index const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::Tag const>::hb_array_t()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<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::HBFixed<OT::IntType<short, 2u>, 14u> >::hb_array_t()
Unexecuted instantiation: hb_array_t<unsigned int const>::hb_array_t()
56
  hb_array_t (const hb_array_t&) = default;
57
  ~hb_array_t () = default;
58
  hb_array_t& operator= (const hb_array_t&) = default;
59
  hb_array_t& operator= (hb_array_t&&) = default;
60
61
0
  constexpr hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
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<hb_glyph_info_t>::hb_array_t(hb_glyph_info_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_glyph_position_t>::hb_array_t(hb_glyph_position_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::TableRecord const>::hb_array_t(OT::TableRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::ResourceRecord const>::hb_array_t(OT::ResourceRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned int>::hb_array_t(unsigned int*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_bit_set_t::page_map_t>::hb_array_t(hb_bit_set_t::page_map_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::hb_array_t(OT::VariationSelectorRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::hb_array_t(OT::UVSMapping const*, unsigned int)
Unexecuted instantiation: hb_array_t<char const>::hb_array_t(char const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::hb_array_t(OT::EncodingRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::CmapSubtableLongGroup const>::hb_array_t(OT::CmapSubtableLongGroup const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::hb_array_t(OT::AxisRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::UnicodeValueRange const>::hb_array_t(OT::UnicodeValueRange const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::hb_array_t(OT::VertOriginMetric const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> const>::hb_array_t(OT::HBFixed<OT::IntType<short, 2u>, 14u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<int>::hb_array_t(int*, unsigned int)
Unexecuted instantiation: hb_array_t<contour_point_t>::hb_array_t(contour_point_t*, unsigned int)
Unexecuted instantiation: hb_array_t<contour_point_t const>::hb_array_t(contour_point_t 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::BaseGlyphPaintRecord const>::hb_array_t(OT::BaseGlyphPaintRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::ClipRecord const>::hb_array_t(OT::ClipRecord 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<OT::SVGDocumentIndexEntry const>::hb_array_t(OT::SVGDocumentIndexEntry const*, 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_ot_map_t::feature_map_t>::hb_array_t(hb_ot_map_t::feature_map_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t*>::hb_array_t(hb_serialize_context_t::object_t**, unsigned int)
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t* const>::hb_array_t(hb_serialize_context_t::object_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)
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*>::hb_array_t(hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t**, unsigned int)
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::hb_array_t(hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::hb_array_t(OT::HBGlyphID16 const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned int const>::hb_array_t(unsigned int const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::hb_array_t(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::hb_array_t(OT::IntType<unsigned short, 2u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: 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)
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)
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t>::hb_array_t(hb_ot_map_t::lookup_map_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<int, 4u>, 16u> const>::hb_array_t(OT::HBFixed<OT::IntType<int, 4u>, 16u> const*, 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<hb_bit_page_t>::hb_array_t(hb_bit_page_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_bit_page_t const>::hb_array_t(hb_bit_page_t const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned long long const>::hb_array_t(unsigned long long const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::IntType<short, 2u> const>::hb_array_t(OT::IntType<short, 2u> 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)
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<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)
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t>::hb_array_t(hb_aat_map_t::range_flags_t*, unsigned int)
Unexecuted instantiation: hb_array_t<AAT::KernPair const>::hb_array_t(AAT::KernPair const*, unsigned int)
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<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)
Unexecuted instantiation: hb_array_t<OT::Index const>::hb_array_t(OT::Index const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> const>::hb_array_t(OT::IntType<unsigned int, 4u> 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::IntType<unsigned char, 1u> const>::hb_array_t(OT::IntType<unsigned char, 1u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Record<OT::Script> const>::hb_array_t(OT::Record<OT::Script> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Record<OT::Feature> const>::hb_array_t(OT::Record<OT::Feature> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Record<OT::LangSys> const>::hb_array_t(OT::Record<OT::LangSys> const*, unsigned int)
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::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<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)
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::IntType<unsigned int, 3u> const>::hb_array_t(OT::IntType<unsigned int, 3u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::BaseScriptRecord const>::hb_array_t(OT::BaseScriptRecord const*, unsigned int)
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)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_array_t<hb_ot_map_builder_t::feature_info_t>::hb_array_t(hb_ot_map_builder_t::feature_info_t*, unsigned int)
Unexecuted instantiation: hb_array_t<LangTag const>::hb_array_t(LangTag const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb::shared_ptr<hb_set_t> >::hb_array_t(hb::shared_ptr<hb_set_t>*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_subset_sets_t const>::hb_array_t(hb_subset_sets_t const*, unsigned int)
Unexecuted instantiation: 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)
Unexecuted instantiation: 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)
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<OT::glyf_impl::SubsetGlyph>::hb_array_t(OT::glyf_impl::SubsetGlyph*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::glyf_impl::SubsetGlyph const>::hb_array_t(OT::glyf_impl::SubsetGlyph const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> >::hb_array_t(hb_pair_t<unsigned int, unsigned int>*, unsigned int)
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<lookup_size_t>::hb_array_t(lookup_size_t*, unsigned int)
Unexecuted instantiation: 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)
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::NameRecord const>::hb_array_t(OT::NameRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::NameRecord>::hb_array_t(OT::NameRecord*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord>::hb_array_t(OT::VariationSelectorRecord*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OS2Range const>::hb_array_t(OT::OS2Range const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::LayerRecord>::hb_array_t(OT::LayerRecord*, 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<double>::hb_array_t(double*, unsigned int)
Unexecuted instantiation: hb_array_t<double const>::hb_array_t(double const*, unsigned int)
Unexecuted instantiation: hb_array_t<char>::hb_array_t(char*, unsigned int)
Unexecuted instantiation: hb_array_t<int const>::hb_array_t(int const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned char>::hb_array_t(unsigned char*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<unsigned char, false>, unsigned int, false>::item_t>::hb_array_t(hb_hashmap_t<hb_vector_t<unsigned char, false>, unsigned int, false>::item_t*, 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::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::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const>::hb_array_t(OT::BitmapSizeTable 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::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::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::LigGlyph, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<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<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const*, 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<char, false> const*, unsigned int, false>::item_t>::hb_array_t(hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::hb_array_t(hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::hb_array_t(OT::HBFixed<OT::IntType<short, 2u>, 14u>*, 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<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::StatAxisRecord const>::hb_array_t(OT::StatAxisRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::AxisValue, OT::IntType<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<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<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)
Unexecuted instantiation: 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)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_array_t<OT::TableRecord>::hb_array_t(OT::TableRecord*, unsigned int)
Unexecuted instantiation: 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)
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::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)
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<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<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, void, true> const>::hb_array_t(OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, void, true> const*, 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)
62
  template <unsigned int length_>
63
0
  constexpr hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
Unexecuted instantiation: hb_array_t<unsigned long long const>::hb_array_t<8u>(unsigned long long const (&) [8u])
Unexecuted instantiation: hb_array_t<hb_aat_feature_mapping_t const>::hb_array_t<78u>(hb_aat_feature_mapping_t const (&) [78u])
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])
Unexecuted instantiation: hb_array_t<hb::shared_ptr<hb_set_t> >::hb_array_t<8u>(hb::shared_ptr<hb_set_t> (&) [8u])
Unexecuted instantiation: hb_array_t<unsigned int>::hb_array_t<50u>(unsigned int (&) [50u])
Unexecuted instantiation: hb_array_t<OT::OS2Range const>::hb_array_t<169u>(OT::OS2Range const (&) [169u])
Unexecuted instantiation: hb_array_t<CFF::blend_arg_t const>::hb_array_t<513u>(CFF::blend_arg_t const (&) [513u])
64
65
  template <typename U,
66
      hb_enable_if (hb_is_cr_convertible(U, Type))>
67
  constexpr hb_array_t (const hb_array_t<U> &o) :
68
    hb_iter_with_fallback_t<hb_array_t, Type&> (),
69
0
    arrayZ (o.arrayZ), length (o.length), backwards_length (o.backwards_length) {}
Unexecuted instantiation: hb_array_t<hb_bit_set_t::page_map_t const>::hb_array_t<hb_bit_set_t::page_map_t, (void*)0>(hb_array_t<hb_bit_set_t::page_map_t> const&)
Unexecuted instantiation: hb_array_t<hb_ot_map_t::feature_map_t const>::hb_array_t<hb_ot_map_t::feature_map_t, (void*)0>(hb_array_t<hb_ot_map_t::feature_map_t> const&)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::hb_array_t<OT::HBGlyphID16, (void*)0>(hb_array_t<OT::HBGlyphID16> const&)
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_info_t const>::hb_array_t<hb_aat_map_builder_t::feature_info_t, (void*)0>(hb_array_t<hb_aat_map_builder_t::feature_info_t> const&)
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::hb_array_t<hb_aat_map_t::range_flags_t, (void*)0>(hb_array_t<hb_aat_map_t::range_flags_t> const&)
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::hb_array_t<hb_pair_t<unsigned int, unsigned int>, (void*)0>(hb_array_t<hb_pair_t<unsigned int, unsigned int> > const&)
Unexecuted instantiation: hb_array_t<unsigned int const>::hb_array_t<unsigned int, (void*)0>(hb_array_t<unsigned int> const&)
70
  template <typename U,
71
      hb_enable_if (hb_is_cr_convertible(U, Type))>
72
  hb_array_t& operator = (const hb_array_t<U> &o)
73
  { arrayZ = o.arrayZ; length = o.length; backwards_length = o.backwards_length; return *this; }
74
75
  /*
76
   * Iterator implementation.
77
   */
78
  typedef Type& __item_t__;
79
  static constexpr bool is_random_access_iterator = true;
80
  static constexpr bool has_fast_len = true;
81
  Type& __item__ () const
82
0
  {
83
0
    if (unlikely (!length)) return CrapOrNull (Type);
84
0
    return *arrayZ;
85
0
  }
Unexecuted instantiation: hb_array_t<unsigned long long const>::__item__() const
Unexecuted instantiation: hb_array_t<unsigned int>::__item__() const
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::TableRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<unsigned int const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::Index const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::IntType<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
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::__item__() const
Unexecuted instantiation: hb_array_t<unsigned char 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<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::__item__() const
Unexecuted instantiation: hb_array_t<char>::__item__() const
Unexecuted instantiation: hb_array_t<double const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::__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<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::__item__() const
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::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> 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
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_ot_color_layer_t>::__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_outline_point_t const>::__item__() const
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_selector_info_t>::__item__() const
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_type_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> 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<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<unsigned int const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__item__() const
Unexecuted instantiation: hb_array_t<unsigned char const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::__item__() const
Unexecuted instantiation: hb_array_t<char>::__item__() const
Unexecuted instantiation: hb_array_t<double const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::__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<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
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::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__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, unsigned int, false>::item_t>::__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, hb_set_t, false>::item_t>::__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::VertOriginMetric 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::OffsetTo<OT::MathGlyphConstruction, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__item__() const
Unexecuted instantiation: hb_array_t<char const>::__item__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__item__() const
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__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
86
  Type& __item_at__ (unsigned i) const
87
0
  {
88
0
    if (unlikely (i >= length)) return CrapOrNull (Type);
89
0
    return arrayZ[i];
90
0
  }
Unexecuted instantiation: hb_array_t<OT::ResourceRecord 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>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<int, 4u>, 16u> 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<unsigned int>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<contour_point_t>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<unsigned char const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::IntType<short, 2u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::NameRecord 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::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::IntType<unsigned short, 2u>, void, true> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<AAT::SettingName 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::IntType<unsigned int, 4u> 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<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<OT::IntType<unsigned short, 2u> const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<hb::shared_ptr<hb_set_t> >::__item_at__(unsigned int) const
Unexecuted instantiation: hb_array_t<OT::StatAxisRecord const>::__item_at__(unsigned int) const
91
  void __next__ ()
92
0
  {
93
0
    if (unlikely (!length))
94
0
      return;
95
0
    length--;
96
0
    backwards_length++;
97
0
    arrayZ++;
98
0
  }
Unexecuted instantiation: hb_array_t<unsigned long long const>::__next__()
Unexecuted instantiation: hb_array_t<unsigned int>::__next__()
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::__next__()
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t* const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::TableRecord const>::__next__()
Unexecuted instantiation: hb_array_t<unsigned int const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::Index const>::__next__()
Unexecuted instantiation: hb_array_t<OT::IntType<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__()
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::__next__()
Unexecuted instantiation: hb_array_t<unsigned char 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<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::__next__()
Unexecuted instantiation: hb_array_t<char>::__next__()
Unexecuted instantiation: hb_array_t<double const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::__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<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__next__()
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<int>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::__next__()
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::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::DataMap const>::__next__()
Unexecuted instantiation: hb_array_t<hb_ot_meta_tag_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_ot_color_layer_t>::__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_outline_point_t const>::__next__()
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__next__()
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_selector_info_t>::__next__()
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::__next__()
Unexecuted instantiation: hb_array_t<hb_aat_layout_feature_type_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::__next__()
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> 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<hb_hashmap_t<unsigned int, hb_vector_t<unsigned int, false>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<unsigned int const>::__next__()
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__next__()
Unexecuted instantiation: hb_array_t<unsigned char const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::__next__()
Unexecuted instantiation: hb_array_t<char>::__next__()
Unexecuted instantiation: hb_array_t<double const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::__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<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__next__()
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
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::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__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, unsigned int, false>::item_t>::__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, hb_set_t, false>::item_t>::__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::VertOriginMetric 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::OffsetTo<OT::MathGlyphConstruction, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__next__()
Unexecuted instantiation: hb_array_t<char const>::__next__()
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__next__()
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__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__()
99
  void __forward__ (unsigned n)
100
0
  {
101
0
    if (unlikely (n > length))
102
0
      n = length;
103
0
    length -= n;
104
0
    backwards_length += n;
105
0
    arrayZ += n;
106
0
  }
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::IntType<unsigned short, 2u> const>::__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<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::__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::UVSMapping const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned 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::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::NameRecord 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::VertOriginMetric const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::__forward__(unsigned int)
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::IntType<unsigned short, 2u> const>::__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<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::__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::UVSMapping const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned 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::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__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<OT::VertOriginMetric const>::__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<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__forward__(unsigned int)
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__forward__(unsigned int)
107
  void __prev__ ()
108
0
  {
109
0
    if (unlikely (!backwards_length))
110
0
      return;
111
0
    length++;
112
0
    backwards_length--;
113
0
    arrayZ--;
114
0
  }
115
  void __rewind__ (unsigned n)
116
  {
117
    if (unlikely (n > backwards_length))
118
      n = backwards_length;
119
    length += n;
120
    backwards_length -= n;
121
    arrayZ -= n;
122
  }
123
0
  unsigned __len__ () const { return length; }
Unexecuted instantiation: hb_array_t<unsigned long long const>::__len__() const
Unexecuted instantiation: hb_array_t<unsigned int>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, unsigned int, true>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>::__len__() const
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<OT::TableRecord const>::__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
Unexecuted instantiation: hb_array_t<OT::Index const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::IntType<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
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::__len__() const
Unexecuted instantiation: hb_array_t<unsigned char const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::FeatureTableSubstitutionRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<int>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<double const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_inc_bimap_t const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* 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<hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<OT::UVSMapping const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::EncodingRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<char const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::__len__() const
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<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t const>::__len__() const
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::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::DataMap const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::VertOriginMetric const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord 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_outline_point_t const>::__len__() const
Unexecuted instantiation: hb_array_t<AAT::SettingName const>::__len__() const
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_aat_map_t::range_flags_t const>::__len__() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> 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<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, unsigned int, false>::item_t>::__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, hb_set_t, false>::item_t>::__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::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, void, true> const>::__len__() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::__len__() const
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, face_table_info_t> const>::__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
124
  /* Ouch. The operator== compares the contents of the array.  For range-based for loops,
125
   * it's best if we can just compare arrayZ, though comparing contents is still fast,
126
   * but also would require that Type has operator==.  As such, we optimize this operator
127
   * for range-based for loop and just compare arrayZ and length.
128
   *
129
   * The above comment is outdated now because we implemented separate begin/end to
130
   * objects that were using hb_array_t for range-based loop before. */
131
  bool operator != (const hb_array_t& o) const
132
0
  { 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::IntType<unsigned short, 2u> const>::operator!=(hb_array_t<OT::IntType<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<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<hb_vector_t<bool, false> const*, hb_vector_t<char, false>, false>::item_t> const&) const
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const* const>::operator!=(hb_array_t<hb_vector_t<int, false> const* const> 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<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::operator!=(hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned 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::IntType<unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<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::IntType<unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> const&) const
Unexecuted instantiation: hb_array_t<OT::NameRecord const>::operator!=(hb_array_t<OT::NameRecord const> const&) const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::operator!=(hb_array_t<OT::HBGlyphID16 const> const&) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>::operator!=(hb_array_t<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const> const&) const
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<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<unsigned int const>::operator!=(hb_array_t<unsigned int const> 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<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<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
Unexecuted instantiation: 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
133
134
  /* Faster range-based for loop without bounds-check. */
135
0
  Type *begin () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t* const>::begin() const
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
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::begin() const
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<hb_hashmap_t<hb_hashmap_t<unsigned int, Triple, false> const*, unsigned int, 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<char, false>, 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<hb_hashmap_t<hb_vector_t<unsigned char, false>, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::AxisValueMap const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<char const>::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<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
Unexecuted instantiation: hb_array_t<OT::glyf_impl::SubsetGlyph const>::begin() const
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<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::IntType<unsigned short, 2u> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const>::begin() const
Unexecuted instantiation: hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t>::begin() const
Unexecuted instantiation: hb_array_t<OT::NameRecord>::begin() const
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const>::begin() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, void, true> 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<hb_ot_map_t::lookup_map_t const>::begin() const
Unexecuted instantiation: hb_array_t<hb::shared_ptr<hb_set_t> >::begin() const
Unexecuted instantiation: hb_array_t<hb_subset_sets_t const>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_blob_t>, false>::item_t>::begin() const
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<OT::MathGlyphPartRecord const>::begin() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord 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<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> const>::begin() const
Unexecuted instantiation: hb_array_t<unsigned int>::begin() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::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, hb_pair_t<void const*, void const*>, false>::item_t>::begin() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, contour_point_vector_t, false>::item_t>::begin() const
136
0
  Type *end () const { return arrayZ + length; }
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t* const>::end() const
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
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, Triple, false>::item_t>::end() const
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<hb_hashmap_t<hb_hashmap_t<unsigned int, Triple, false> const*, unsigned int, 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<char, false>, 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<hb_hashmap_t<hb_vector_t<unsigned char, false>, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<OT::AxisValueMap const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<hb_vector_t<char, false> const*, unsigned int, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<char const>::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<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
Unexecuted instantiation: hb_array_t<OT::glyf_impl::SubsetGlyph const>::end() const
Unexecuted instantiation: hb_array_t<hb_array_t<unsigned char const> const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<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::IntType<unsigned short, 2u> const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const>::end() const
Unexecuted instantiation: hb_array_t<OT::hb_accelerate_subtables_context_t::hb_applicable_t>::end() const
Unexecuted instantiation: hb_array_t<OT::NameRecord>::end() const
Unexecuted instantiation: hb_array_t<OT::BitmapSizeTable const>::end() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::AxisValueRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, void, true> 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<hb_ot_map_t::lookup_map_t const>::end() const
Unexecuted instantiation: hb_array_t<hb::shared_ptr<hb_set_t> >::end() const
Unexecuted instantiation: hb_array_t<hb_subset_sets_t const>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, hb::unique_ptr<hb_blob_t>, false>::item_t>::end() const
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<OT::MathGlyphPartRecord const>::end() const
Unexecuted instantiation: hb_array_t<OT::MathGlyphVariantRecord 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<hb_hashmap_t<unsigned int, face_table_info_t, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_vector_t<unsigned char, false> const>::end() const
Unexecuted instantiation: hb_array_t<unsigned int>::end() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::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, hb_pair_t<void const*, void const*>, false>::item_t>::end() const
Unexecuted instantiation: hb_array_t<hb_hashmap_t<unsigned int, contour_point_vector_t, false>::item_t>::end() const
137
138
139
  /* Extra operators.
140
   */
141
0
  Type * operator & () const { return arrayZ; }
Unexecuted instantiation: hb_array_t<OT::Index const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<int, 4u>, 16u> const>::operator&() const
Unexecuted instantiation: hb_array_t<char const>::operator&() const
Unexecuted instantiation: hb_array_t<unsigned char const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16 const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::IntType<short, 2u> const>::operator&() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const>::operator&() const
Unexecuted instantiation: hb_array_t<AAT::Feature const>::operator&() const
142
0
  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>()
Unexecuted instantiation: hb_array_t<hb_bit_page_t>::operator hb_array_t<hb_bit_page_t 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>()
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*>::operator hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t* const>()
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t*>::operator hb_array_t<hb_serialize_context_t::object_t* const>()
Unexecuted instantiation: hb_array_t<unsigned int>::operator hb_array_t<unsigned int const>()
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<double>::operator hb_array_t<double const>()
Unexecuted instantiation: hb_array_t<char>::operator hb_array_t<char const>()
Unexecuted instantiation: hb_array_t<int>::operator hb_array_t<int const>()
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>()
Unexecuted instantiation: hb_array_t<contour_point_t>::operator hb_array_t<contour_point_t const>()
Unexecuted instantiation: hb_array_t<OT::glyf_impl::SubsetGlyph>::operator hb_array_t<OT::glyf_impl::SubsetGlyph const>()
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<OT::LayerRecord>::operator hb_array_t<OT::LayerRecord const>()
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16>::operator hb_array_t<OT::HBGlyphID16 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::HBFixed<OT::IntType<short, 2u>, 14u> >::operator hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> const>()
Unexecuted instantiation: 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>()
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::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>()
143
  template <typename T> operator T * () const { return arrayZ; }
144
145
  HB_INTERNAL bool operator == (const hb_array_t &o) const;
146
147
  uint32_t hash () const
148
0
  {
149
0
    // FNV-1a hash function
150
0
    // https://github.com/harfbuzz/harfbuzz/pull/4228
151
0
    uint32_t current = /*cbf29ce4*/0x84222325;
152
0
    for (auto &v : *this)
153
0
    {
154
0
      current = current ^ hb_hash (v);
155
0
      current = current * 16777619;
156
0
    }
157
0
    return current;
158
0
  }
Unexecuted instantiation: hb_array_t<bool const>::hash() const
Unexecuted instantiation: hb_array_t<int const>::hash() const
159
160
  /*
161
   * Compare, Sort, and Search.
162
   */
163
164
  /* Note: our compare is NOT lexicographic; it also does NOT call Type::cmp. */
165
  int cmp (const hb_array_t &a) const
166
0
  {
167
0
    if (length != a.length)
168
0
      return (int) a.length - (int) length;
169
0
    return hb_memcmp (a.arrayZ, arrayZ, get_size ());
170
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
171
  HB_INTERNAL static int cmp (const void *pa, const void *pb)
172
  {
173
    hb_array_t *a = (hb_array_t *) pa;
174
    hb_array_t *b = (hb_array_t *) pb;
175
    return b->cmp (*a);
176
  }
177
178
  template <typename T>
179
  Type *lsearch (const T &x, Type *not_found = nullptr)
180
0
  {
181
0
    unsigned i;
182
0
    return lfind (x, &i) ? &this->arrayZ[i] : not_found;
183
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: OT::DataMap const* hb_array_t<OT::DataMap const>::lsearch<unsigned int>(unsigned int const&, OT::DataMap const*)
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*)
184
  template <typename T>
185
  const Type *lsearch (const T &x, const Type *not_found = nullptr) const
186
  {
187
    unsigned i;
188
    return lfind (x, &i) ? &this->arrayZ[i] : not_found;
189
  }
190
  template <typename T>
191
  bool lfind (const T &x, unsigned *pos = nullptr,
192
        hb_not_found_t not_found = HB_NOT_FOUND_DONT_STORE,
193
        unsigned int to_store = (unsigned int) -1) const
194
0
  {
195
0
    for (unsigned i = 0; i < length; ++i)
196
0
      if (hb_equal (x, this->arrayZ[i]))
197
0
      {
198
0
  if (pos)
199
0
    *pos = i;
200
0
  return true;
201
0
      }
202
203
0
    if (pos)
204
0
    {
205
0
      switch (not_found)
206
0
      {
207
0
  case HB_NOT_FOUND_DONT_STORE:
208
0
    break;
209
210
0
  case HB_NOT_FOUND_STORE:
211
0
    *pos = to_store;
212
0
    break;
213
214
0
  case HB_NOT_FOUND_STORE_CLOSEST:
215
0
    *pos = length;
216
0
    break;
217
0
      }
218
0
    }
219
0
    return false;
220
0
  }
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::TableRecord const>::lfind<OT::Tag>(OT::Tag const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_array_t<OT::AxisRecord const>::lfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_array_t<OT::DataMap const>::lfind<unsigned int>(unsigned int 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
221
222
  hb_sorted_array_t<Type> qsort (int (*cmp_)(const void*, const void*))
223
0
  {
224
    //static_assert (hb_enable_if (hb_is_trivially_copy_assignable(Type)), "");
225
0
    if (likely (length))
226
0
      hb_qsort (arrayZ, length, this->get_item_size (), cmp_);
227
0
    return hb_sorted_array_t<Type> (*this);
228
0
  }
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<OT::delta_row_encoding_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const*>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<OT::AxisValueMap>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<OT::cff1::accelerator_t::gname_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_ot_name_entry_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_event_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_aat_map_builder_t::feature_info_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_ot_map_builder_t::feature_info_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_ot_map_t::feature_map_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<unsigned int>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<OT::delta_row_encoding_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_vector_t<int, false> const*>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_serialize_context_t::object_t::link_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<lookup_size_t>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<OT::AxisValueMap>::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, face_table_info_t> >::qsort(int (*)(void const*, void const*))
Unexecuted instantiation: hb_array_t<hb_pair_t<unsigned int, unsigned int> >::qsort(int (*)(void const*, void const*))
229
  hb_sorted_array_t<Type> qsort ()
230
0
  {
231
    //static_assert (hb_enable_if (hb_is_trivially_copy_assignable(Type)), "");
232
0
    if (likely (length))
233
0
      hb_qsort (arrayZ, length, this->get_item_size (), Type::cmp);
234
0
    return hb_sorted_array_t<Type> (*this);
235
0
  }
Unexecuted instantiation: hb_array_t<OT::NameRecord>::qsort()
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t>::qsort()
Unexecuted instantiation: hb_array_t<OT::NameRecord>::qsort()
Unexecuted instantiation: hb_array_t<OT::TableRecord>::qsort()
236
237
  /*
238
   * Other methods.
239
   */
240
241
0
  unsigned int get_size () const { return length * this->get_item_size (); }
Unexecuted instantiation: hb_array_t<unsigned char const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> const>::get_size() const
Unexecuted instantiation: hb_array_t<char const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<int, 4u>, 16u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::IntType<short, 2u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const>::get_size() const
Unexecuted instantiation: hb_array_t<AAT::Feature const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::Index const>::get_size() const
Unexecuted instantiation: hb_array_t<OT::Tag const>::get_size() const
242
243
  /*
244
   * Reverse the order of items in this array in the range [start, end).
245
   */
246
  void reverse (unsigned start = 0, unsigned end = -1)
247
0
  {
248
0
    start = hb_min (start, length);
249
0
    end = hb_min (end, length);
250
251
0
    if (end < start + 2)
252
0
      return;
253
254
0
    for (unsigned lhs = start, rhs = end - 1; lhs < rhs; lhs++, rhs--)
255
0
      hb_swap (arrayZ[rhs], arrayZ[lhs]);
256
0
  }
Unexecuted instantiation: hb_array_t<hb_glyph_info_t>::reverse(unsigned int, unsigned int)
Unexecuted instantiation: hb_array_t<hb_glyph_position_t>::reverse(unsigned int, unsigned int)
Unexecuted instantiation: hb_array_t<OT::VariationSelectorRecord>::reverse(unsigned int, unsigned int)
257
258
  hb_array_t sub_array (unsigned int start_offset = 0, unsigned int *seg_count = nullptr /* IN/OUT */) const
259
0
  {
260
0
    if (!start_offset && !seg_count)
261
0
      return *this;
262
263
0
    unsigned int count = length;
264
0
    if (unlikely (start_offset > count))
265
0
      count = 0;
266
0
    else
267
0
      count -= start_offset;
268
0
    if (seg_count)
269
0
      count = *seg_count = hb_min (count, *seg_count);
270
0
    return hb_array_t (arrayZ + start_offset, count);
271
0
  }
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::TableRecord const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::Index const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::IntType<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::IntType<short, 2u>, 14u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<char>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::AxisRecord const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<int, 4u>, 16u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<char const>::sub_array(unsigned int, unsigned int*) const
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::IntType<unsigned short, 2u> const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<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::DataMap 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::LayerRecord 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<AAT::SettingName const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<AAT::FeatureName const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<CFF::number_t const>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> 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<hb_ot_map_t::lookup_map_t>::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::sub_array(unsigned int, unsigned int*) const
Unexecuted instantiation: hb_array_t<char>::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<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<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
272
  hb_array_t sub_array (unsigned int start_offset, unsigned int seg_count) const
273
0
  { 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::IntType<short, 2u>, 14u> const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> >::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<char const>::sub_array(unsigned int, unsigned int) const
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::IntType<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::LayerRecord 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
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> const>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<hb_ot_map_t::lookup_map_t>::sub_array(unsigned int, unsigned int) const
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<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
274
275
  hb_array_t truncate (unsigned length) const { return sub_array (0, length); }
276
277
  template <typename T,
278
      unsigned P = sizeof (Type),
279
      hb_enable_if (P == 1)>
280
  const T *as () const
281
0
  { return length < hb_min_size (T) ? &Null (T) : reinterpret_cast<const T *> (arrayZ); }
Unexecuted instantiation: OT::OpenTypeFontFile const* hb_array_t<char const>::as<OT::OpenTypeFontFile, 1u, (void*)0>() const
Unexecuted instantiation: OT::cmap const* hb_array_t<char const>::as<OT::cmap, 1u, (void*)0>() const
Unexecuted instantiation: OT::OS2 const* hb_array_t<char const>::as<OT::OS2, 1u, (void*)0>() const
Unexecuted instantiation: OT::TupleVariationData const* hb_array_t<char const>::as<OT::TupleVariationData, 1u, (void*)0>() const
Unexecuted instantiation: OT::MVAR const* hb_array_t<char const>::as<OT::MVAR, 1u, (void*)0>() const
Unexecuted instantiation: OT::fvar const* hb_array_t<char const>::as<OT::fvar, 1u, (void*)0>() const
Unexecuted instantiation: OT::avar const* hb_array_t<char const>::as<OT::avar, 1u, (void*)0>() const
Unexecuted instantiation: OT::hhea const* hb_array_t<char const>::as<OT::hhea, 1u, (void*)0>() const
Unexecuted instantiation: OT::vhea const* hb_array_t<char const>::as<OT::vhea, 1u, (void*)0>() const
Unexecuted instantiation: OT::maxp const* hb_array_t<char const>::as<OT::maxp, 1u, (void*)0>() const
Unexecuted instantiation: OT::gvar const* hb_array_t<char const>::as<OT::gvar, 1u, (void*)0>() const
Unexecuted instantiation: OT::GlyphVariationData const* hb_array_t<char const>::as<OT::GlyphVariationData, 1u, (void*)0>() const
Unexecuted instantiation: OT::hmtxvmtx<OT::hmtx, OT::hhea, OT::HVAR> const* hb_array_t<char const>::as<OT::hmtxvmtx<OT::hmtx, OT::hhea, OT::HVAR>, 1u, (void*)0>() const
Unexecuted instantiation: OT::hmtxvmtx<OT::vmtx, OT::vhea, OT::VVAR> const* hb_array_t<char const>::as<OT::hmtxvmtx<OT::vmtx, OT::vhea, OT::VVAR>, 1u, (void*)0>() const
Unexecuted instantiation: OT::glyf_impl::GlyphHeader const* hb_array_t<char const>::as<OT::glyf_impl::GlyphHeader, 1u, (void*)0>() const
Unexecuted instantiation: OT::head const* hb_array_t<char const>::as<OT::head, 1u, (void*)0>() const
Unexecuted instantiation: OT::loca const* hb_array_t<char const>::as<OT::loca, 1u, (void*)0>() const
Unexecuted instantiation: OT::glyf const* hb_array_t<char const>::as<OT::glyf, 1u, (void*)0>() const
Unexecuted instantiation: OT::cff1 const* hb_array_t<char const>::as<OT::cff1, 1u, (void*)0>() const
Unexecuted instantiation: OT::cff2 const* hb_array_t<char const>::as<OT::cff2, 1u, (void*)0>() const
Unexecuted instantiation: OT::GDEF const* hb_array_t<char const>::as<OT::GDEF, 1u, (void*)0>() const
Unexecuted instantiation: OT::Layout::GPOS const* hb_array_t<char const>::as<OT::Layout::GPOS, 1u, (void*)0>() const
Unexecuted instantiation: OT::meta const* hb_array_t<char const>::as<OT::meta, 1u, (void*)0>() const
Unexecuted instantiation: AAT::ltag const* hb_array_t<char const>::as<AAT::ltag, 1u, (void*)0>() const
Unexecuted instantiation: OT::name const* hb_array_t<char const>::as<OT::name, 1u, (void*)0>() const
Unexecuted instantiation: OT::post const* hb_array_t<char const>::as<OT::post, 1u, (void*)0>() const
Unexecuted instantiation: OT::CBLC const* hb_array_t<char const>::as<OT::CBLC, 1u, (void*)0>() const
Unexecuted instantiation: OT::CBDT const* hb_array_t<char const>::as<OT::CBDT, 1u, (void*)0>() const
Unexecuted instantiation: OT::sbix const* hb_array_t<char const>::as<OT::sbix, 1u, (void*)0>() const
Unexecuted instantiation: OT::sbix::accelerator_t::PNGHeader const* hb_array_t<char const>::as<OT::sbix::accelerator_t::PNGHeader, 1u, (void*)0>() const
Unexecuted instantiation: OT::SVG const* hb_array_t<char const>::as<OT::SVG, 1u, (void*)0>() const
Unexecuted instantiation: OT::Layout::GSUB const* hb_array_t<char const>::as<OT::Layout::GSUB, 1u, (void*)0>() const
Unexecuted instantiation: OT::HVAR const* hb_array_t<char const>::as<OT::HVAR, 1u, (void*)0>() const
Unexecuted instantiation: OT::VVAR const* hb_array_t<char const>::as<OT::VVAR, 1u, (void*)0>() const
Unexecuted instantiation: OT::VORG const* hb_array_t<char const>::as<OT::VORG, 1u, (void*)0>() const
Unexecuted instantiation: OT::COLR const* hb_array_t<char const>::as<OT::COLR, 1u, (void*)0>() const
Unexecuted instantiation: AAT::morx const* hb_array_t<char const>::as<AAT::morx, 1u, (void*)0>() const
Unexecuted instantiation: AAT::mort const* hb_array_t<char const>::as<AAT::mort, 1u, (void*)0>() const
Unexecuted instantiation: AAT::kerx const* hb_array_t<char const>::as<AAT::kerx, 1u, (void*)0>() const
Unexecuted instantiation: AAT::ankr const* hb_array_t<char const>::as<AAT::ankr, 1u, (void*)0>() const
Unexecuted instantiation: AAT::trak const* hb_array_t<char const>::as<AAT::trak, 1u, (void*)0>() const
Unexecuted instantiation: AAT::feat const* hb_array_t<char const>::as<AAT::feat, 1u, (void*)0>() const
Unexecuted instantiation: OT::CPAL const* hb_array_t<char const>::as<OT::CPAL, 1u, (void*)0>() const
Unexecuted instantiation: OT::kern const* hb_array_t<char const>::as<OT::kern, 1u, (void*)0>() const
Unexecuted instantiation: OT::BASE const* hb_array_t<char const>::as<OT::BASE, 1u, (void*)0>() const
Unexecuted instantiation: OT::glyf const* hb_array_t<char const>::as<OT::glyf const, 1u, (void*)0>() const
Unexecuted instantiation: OT::hdmx const* hb_array_t<char const>::as<OT::hdmx const, 1u, (void*)0>() const
Unexecuted instantiation: OT::name const* hb_array_t<char const>::as<OT::name const, 1u, (void*)0>() const
Unexecuted instantiation: OT::head const* hb_array_t<char const>::as<OT::head const, 1u, (void*)0>() const
Unexecuted instantiation: OT::hmtx const* hb_array_t<char const>::as<OT::hmtx const, 1u, (void*)0>() const
Unexecuted instantiation: OT::vmtx const* hb_array_t<char const>::as<OT::vmtx const, 1u, (void*)0>() const
Unexecuted instantiation: OT::maxp const* hb_array_t<char const>::as<OT::maxp const, 1u, (void*)0>() const
Unexecuted instantiation: OT::sbix const* hb_array_t<char const>::as<OT::sbix const, 1u, (void*)0>() const
Unexecuted instantiation: OT::cmap const* hb_array_t<char const>::as<OT::cmap const, 1u, (void*)0>() const
Unexecuted instantiation: OT::OS2 const* hb_array_t<char const>::as<OT::OS2 const, 1u, (void*)0>() const
Unexecuted instantiation: OT::post const* hb_array_t<char const>::as<OT::post const, 1u, (void*)0>() const
Unexecuted instantiation: OT::COLR const* hb_array_t<char const>::as<OT::COLR const, 1u, (void*)0>() const
Unexecuted instantiation: OT::CPAL const* hb_array_t<char const>::as<OT::CPAL const, 1u, (void*)0>() const
Unexecuted instantiation: OT::CBLC const* hb_array_t<char const>::as<OT::CBLC const, 1u, (void*)0>() const
Unexecuted instantiation: OT::MATH const* hb_array_t<char const>::as<OT::MATH const, 1u, (void*)0>() const
Unexecuted instantiation: OT::BASE const* hb_array_t<char const>::as<OT::BASE const, 1u, (void*)0>() const
Unexecuted instantiation: OT::VORG const* hb_array_t<char const>::as<OT::VORG const, 1u, (void*)0>() const
Unexecuted instantiation: OT::GDEF const* hb_array_t<char const>::as<OT::GDEF const, 1u, (void*)0>() const
Unexecuted instantiation: OT::Layout::GSUB const* hb_array_t<char const>::as<OT::Layout::GSUB const, 1u, (void*)0>() const
Unexecuted instantiation: OT::Layout::GPOS const* hb_array_t<char const>::as<OT::Layout::GPOS const, 1u, (void*)0>() const
Unexecuted instantiation: OT::gvar const* hb_array_t<char const>::as<OT::gvar const, 1u, (void*)0>() const
Unexecuted instantiation: OT::HVAR const* hb_array_t<char const>::as<OT::HVAR const, 1u, (void*)0>() const
Unexecuted instantiation: OT::VVAR const* hb_array_t<char const>::as<OT::VVAR const, 1u, (void*)0>() const
Unexecuted instantiation: OT::fvar const* hb_array_t<char const>::as<OT::fvar const, 1u, (void*)0>() const
Unexecuted instantiation: OT::avar const* hb_array_t<char const>::as<OT::avar const, 1u, (void*)0>() const
Unexecuted instantiation: OT::cvar const* hb_array_t<char const>::as<OT::cvar const, 1u, (void*)0>() const
Unexecuted instantiation: OT::MVAR const* hb_array_t<char const>::as<OT::MVAR const, 1u, (void*)0>() const
Unexecuted instantiation: OT::STAT const* hb_array_t<char const>::as<OT::STAT const, 1u, (void*)0>() const
Unexecuted instantiation: OT::cvar const* hb_array_t<char const>::as<OT::cvar, 1u, (void*)0>() const
Unexecuted instantiation: OT::MATH const* hb_array_t<char const>::as<OT::MATH, 1u, (void*)0>() const
Unexecuted instantiation: OT::STAT const* hb_array_t<char const>::as<OT::STAT, 1u, (void*)0>() const
282
283
  template <typename T,
284
      unsigned P = sizeof (Type),
285
      hb_enable_if (P == 1)>
286
  bool check_range (const T *p, unsigned int size = T::static_size) const
287
0
  {
288
0
    return arrayZ <= ((const char *) p)
289
0
  && ((const char *) p) <= arrayZ + length
290
0
  && (unsigned int) (arrayZ + length - (const char *) p) >= size;
291
0
  }
Unexecuted instantiation: bool hb_array_t<char const>::check_range<OT::IntType<unsigned char, 1u>, 1u, (void*)0>(OT::IntType<unsigned char, 1u> const*, unsigned int) const
Unexecuted instantiation: bool hb_array_t<char const>::check_range<OT::TupleVariationHeader, 1u, (void*)0>(OT::TupleVariationHeader const*, unsigned int) const
Unexecuted instantiation: bool hb_array_t<char const>::check_range<OT::IntType<unsigned short, 2u>, 1u, (void*)0>(OT::IntType<unsigned short, 2u> const*, unsigned int) const
Unexecuted instantiation: bool hb_array_t<char const>::check_range<OT::glyf_impl::CompositeGlyphRecord, 1u, (void*)0>(OT::glyf_impl::CompositeGlyphRecord const*, unsigned int) const
Unexecuted instantiation: bool hb_array_t<char const>::check_range<OT::glyf_impl::VarCompositeGlyphRecord, 1u, (void*)0>(OT::glyf_impl::VarCompositeGlyphRecord const*, unsigned int) const
292
293
  /* Only call if you allocated the underlying array using hb_malloc() or similar. */
294
  void fini ()
295
0
  { hb_free ((void *) arrayZ); arrayZ = nullptr; length = 0; }
Unexecuted instantiation: hb_array_t<char const>::fini()
Unexecuted instantiation: hb_array_t<char const>::fini()
296
297
  template <typename hb_serialize_context_t,
298
      typename U = Type,
299
      hb_enable_if (!(sizeof (U) < sizeof (long long) && hb_is_trivially_copy_assignable(hb_decay<Type>)))>
300
  hb_array_t copy (hb_serialize_context_t *c) const
301
  {
302
    TRACE_SERIALIZE (this);
303
    auto* out = c->start_embed (arrayZ);
304
    if (unlikely (!c->extend_size (out, get_size (), false))) return_trace (hb_array_t ());
305
    for (unsigned i = 0; i < length; i++)
306
      out[i] = arrayZ[i]; /* TODO: add version that calls c->copy() */
307
    return_trace (hb_array_t (out, length));
308
  }
309
310
  template <typename hb_serialize_context_t,
311
      typename U = Type,
312
      hb_enable_if (sizeof (U) < sizeof (long long) && hb_is_trivially_copy_assignable(hb_decay<Type>))>
313
  hb_array_t copy (hb_serialize_context_t *c) const
314
0
  {
315
0
    TRACE_SERIALIZE (this);
316
0
    auto* out = c->start_embed (arrayZ);
317
0
    if (unlikely (!c->extend_size (out, get_size (), false))) return_trace (hb_array_t ());
318
0
    hb_memcpy (out, arrayZ, get_size ());
319
0
    return_trace (hb_array_t (out, length));
320
0
  }
Unexecuted instantiation: hb_array_t<char const> hb_array_t<char const>::copy<hb_serialize_context_t, char const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const> hb_array_t<OT::IntType<unsigned char, 1u> const>::copy<hb_serialize_context_t, OT::IntType<unsigned char, 1u> const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const> hb_array_t<OT::LayerRecord const>::copy<hb_serialize_context_t, OT::LayerRecord const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> const> hb_array_t<OT::IntType<unsigned int, 4u> const>::copy<hb_serialize_context_t, OT::IntType<unsigned int, 4u> const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::Index const> hb_array_t<OT::Index const>::copy<hb_serialize_context_t, OT::Index const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::Tag const> hb_array_t<OT::Tag const>::copy<hb_serialize_context_t, OT::Tag const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<char const> hb_array_t<char const>::copy<hb_serialize_context_t, char const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const> hb_array_t<OT::IntType<unsigned char, 1u> const>::copy<hb_serialize_context_t, OT::IntType<unsigned char, 1u> const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::LayerRecord const> hb_array_t<OT::LayerRecord const>::copy<hb_serialize_context_t, OT::LayerRecord const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 4u> const> hb_array_t<OT::IntType<unsigned int, 4u> const>::copy<hb_serialize_context_t, OT::IntType<unsigned int, 4u> const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::Index const> hb_array_t<OT::Index const>::copy<hb_serialize_context_t, OT::Index const, (void*)0>(hb_serialize_context_t*) const
Unexecuted instantiation: hb_array_t<OT::Tag const> hb_array_t<OT::Tag const>::copy<hb_serialize_context_t, OT::Tag const, (void*)0>(hb_serialize_context_t*) const
321
322
  template <typename hb_sanitize_context_t>
323
  bool sanitize (hb_sanitize_context_t *c) const
324
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
325
326
  /*
327
   * Members
328
   */
329
330
  public:
331
  Type *arrayZ = nullptr;
332
  unsigned int length = 0;
333
  unsigned int backwards_length = 0;
334
};
335
template <typename T> inline hb_array_t<T>
336
hb_array ()
337
0
{ return hb_array_t<T> (); }
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> const> hb_array<OT::HBFixed<OT::IntType<short, 2u>, 14u> const>()
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> > hb_array<OT::HBFixed<OT::IntType<short, 2u>, 14u> >()
338
template <typename T> inline hb_array_t<T>
339
hb_array (T *array, unsigned int length)
340
0
{ return hb_array_t<T> (array, length); }
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)
Unexecuted instantiation: 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)
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)
Unexecuted instantiation: 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)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_array_t<hb_bit_page_t> hb_array<hb_bit_page_t>(hb_bit_page_t*, unsigned int)
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)
Unexecuted instantiation: hb_array_t<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*> hb_array<hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t*>(hb_pool_t<hb_serialize_context_t::object_t, 32u>::chunk_t**, unsigned int)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_array_t<unsigned int const> hb_array<unsigned int const>(unsigned int const*, unsigned int)
Unexecuted instantiation: hb_array_t<unsigned int> hb_array<unsigned int>(unsigned int*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::TableRecord const> hb_array<OT::TableRecord const>(OT::TableRecord const*, 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::Index const> hb_array<OT::Index const>(OT::Index const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned int, 3u> const> hb_array<OT::IntType<unsigned int, 3u> const>(OT::IntType<unsigned int, 3u> const*, unsigned int)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned short, 2u> const> hb_array<OT::IntType<unsigned short, 2u> const>(OT::IntType<unsigned short, 2u> const*, unsigned int)
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<OT::FeatureTableSubstitutionRecord const> hb_array<OT::FeatureTableSubstitutionRecord const>(OT::FeatureTableSubstitutionRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBFixed<OT::IntType<short, 2u>, 14u> const> hb_array<OT::HBFixed<OT::IntType<short, 2u>, 14u> const>(OT::HBFixed<OT::IntType<short, 2u>, 14u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<bool> hb_array<bool>(bool*, unsigned int)
Unexecuted instantiation: hb_array_t<double> hb_array<double>(double*, unsigned int)
Unexecuted instantiation: hb_array_t<char> hb_array<char>(char*, unsigned int)
Unexecuted instantiation: hb_array_t<int> hb_array<int>(int*, 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::AxisRecord const> hb_array<OT::AxisRecord const>(OT::AxisRecord const*, unsigned int)
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::HBFixed<OT::IntType<int, 4u>, 16u> const> hb_array<OT::HBFixed<OT::IntType<int, 4u>, 16u> const>(OT::HBFixed<OT::IntType<int, 4u>, 16u> const*, unsigned int)
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)
Unexecuted instantiation: hb_array_t<OT::glyf_impl::SubsetGlyph> hb_array<OT::glyf_impl::SubsetGlyph>(OT::glyf_impl::SubsetGlyph*, unsigned int)
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::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, void, true> const>(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, 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::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::IntType<short, 2u> const> hb_array<OT::IntType<short, 2u> const>(OT::IntType<short, 2u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::IntType<unsigned char, 1u> const> hb_array<OT::IntType<unsigned char, 1u> const>(OT::IntType<unsigned char, 1u> 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)
Unexecuted instantiation: hb_array_t<OT::NameRecord const> hb_array<OT::NameRecord const>(OT::NameRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_ot_name_entry_t> hb_array<hb_ot_name_entry_t>(hb_ot_name_entry_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::HBGlyphID16 const> hb_array<OT::HBGlyphID16 const>(OT::HBGlyphID16 const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, void, true> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, void, true> 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<OT::AxisValueRecord const> hb_array<OT::AxisValueRecord const>(OT::AxisValueRecord const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::AxisValue, OT::IntType<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::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::IntType<unsigned int, 4u>, void, true> const> hb_array<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> const>(OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, void, true> 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::LayerRecord> hb_array<OT::LayerRecord>(OT::LayerRecord*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::HBGlyphID16> hb_array<OT::HBGlyphID16>(OT::HBGlyphID16*, unsigned int)
Unexecuted instantiation: hb_array_t<hb_outline_point_t> hb_array<hb_outline_point_t>(hb_outline_point_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<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::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)
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_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::IntType<unsigned int, 4u> const> hb_array<OT::IntType<unsigned int, 4u> const>(OT::IntType<unsigned int, 4u> const*, unsigned int)
Unexecuted instantiation: hb_array_t<OT::Tag const> hb_array<OT::Tag const>(OT::Tag const*, unsigned int)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_array_t<lookup_size_t> hb_array<lookup_size_t>(lookup_size_t*, 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<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<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<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, void, true> const> hb_array<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, void, true> const>(OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, void, true> const*, 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<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)
Unexecuted instantiation: hb_array_t<OT::TableRecord> hb_array<OT::TableRecord>(OT::TableRecord*, 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::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)
341
template <typename T, unsigned int length_> inline hb_array_t<T>
342
hb_array (T (&array_)[length_])
343
0
{ return hb_array_t<T> (array_); }
Unexecuted instantiation: hb_array_t<unsigned long long const> hb_array<unsigned long long const, 8u>(unsigned long long const (&) [8u])
Unexecuted instantiation: 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])
Unexecuted instantiation: hb_array_t<unsigned int> hb_array<unsigned int, 50u>(unsigned int (&) [50u])
344
345
template <typename Type>
346
struct hb_sorted_array_t :
347
  hb_array_t<Type>,
348
  hb_iter_t<hb_sorted_array_t<Type>, Type&>
349
{
350
  typedef hb_iter_t<hb_sorted_array_t, Type&> iter_base_t;
351
  HB_ITER_USING (iter_base_t);
352
  static constexpr bool is_random_access_iterator = true;
353
  static constexpr bool is_sorted_iterator = true;
354
  static constexpr bool has_fast_len = true;
355
356
  hb_sorted_array_t () = default;
357
  hb_sorted_array_t (const hb_sorted_array_t&) = default;
358
  ~hb_sorted_array_t () = default;
359
  hb_sorted_array_t& operator= (const hb_sorted_array_t&) = default;
360
  hb_sorted_array_t& operator= (hb_sorted_array_t&&) = default;
361
362
0
  constexpr hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
Unexecuted instantiation: hb_sorted_array_t<OT::TableRecord const>::hb_sorted_array_t(OT::TableRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord const>::hb_sorted_array_t(OT::VariationSelectorRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::hb_sorted_array_t(OT::UVSMapping const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::EncodingRecord const>::hb_sorted_array_t(OT::EncodingRecord const*, unsigned int)
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::UnicodeValueRange const>::hb_sorted_array_t(OT::UnicodeValueRange const*, unsigned int)
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::BaseGlyphPaintRecord const>::hb_sorted_array_t(OT::BaseGlyphPaintRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::ClipRecord const>::hb_sorted_array_t(OT::ClipRecord 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)
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::HBGlyphID16 const>::hb_sorted_array_t(OT::HBGlyphID16 const*, unsigned int)
Unexecuted instantiation: 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)
Unexecuted instantiation: hb_sorted_array_t<AAT::FeatureName const>::hb_sorted_array_t(AAT::FeatureName const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<AAT::KernPair const>::hb_sorted_array_t(AAT::KernPair const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Script> const>::hb_sorted_array_t(OT::Record<OT::Script> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Feature> const>::hb_sorted_array_t(OT::Record<OT::Feature> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::LangSys> const>::hb_sorted_array_t(OT::Record<OT::LangSys> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::BaseScriptRecord const>::hb_sorted_array_t(OT::BaseScriptRecord const*, unsigned int)
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<LangTag const>::hb_sorted_array_t(LangTag const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord>::hb_sorted_array_t(OT::VariationSelectorRecord*, unsigned int)
363
  template <unsigned int length_>
364
0
  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])
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])
Unexecuted instantiation: hb_sorted_array_t<OT::OS2Range const>::hb_sorted_array_t<169u>(OT::OS2Range const (&) [169u])
365
366
  template <typename U,
367
      hb_enable_if (hb_is_cr_convertible(U, Type))>
368
  constexpr hb_sorted_array_t (const hb_array_t<U> &o) :
369
    hb_array_t<Type> (o),
370
0
    hb_iter_t<hb_sorted_array_t, Type&> () {}
Unexecuted instantiation: hb_sorted_array_t<OT::TableRecord const>::hb_sorted_array_t<OT::TableRecord const, (void*)0>(hb_array_t<OT::TableRecord const> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_bit_set_t::page_map_t const>::hb_sorted_array_t<hb_bit_set_t::page_map_t, (void*)0>(hb_array_t<hb_bit_set_t::page_map_t> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::cff1::accelerator_t::gname_t>::hb_sorted_array_t<OT::cff1::accelerator_t::gname_t, (void*)0>(hb_array_t<OT::cff1::accelerator_t::gname_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_ot_map_t::feature_map_t const>::hb_sorted_array_t<hb_ot_map_t::feature_map_t, (void*)0>(hb_array_t<hb_ot_map_t::feature_map_t> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16>::hb_sorted_array_t<OT::HBGlyphID16, (void*)0>(hb_array_t<OT::HBGlyphID16> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >::hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, (void*)0>(hb_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> > const&)
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16 const>::hb_sorted_array_t<OT::HBGlyphID16, (void*)0>(hb_array_t<OT::HBGlyphID16> const&)
Unexecuted instantiation: hb_sorted_array_t<AAT::FeatureName const>::hb_sorted_array_t<AAT::FeatureName const, (void*)0>(hb_array_t<AAT::FeatureName const> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t const>::hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t, (void*)0>(hb_array_t<hb_aat_map_builder_t::feature_info_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_aat_map_t::range_flags_t const>::hb_sorted_array_t<hb_aat_map_t::range_flags_t, (void*)0>(hb_array_t<hb_aat_map_t::range_flags_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_aat_map_builder_t::feature_event_t>::hb_sorted_array_t<hb_aat_map_builder_t::feature_event_t, (void*)0>(hb_array_t<hb_aat_map_builder_t::feature_event_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t>::hb_sorted_array_t<hb_aat_map_builder_t::feature_info_t, (void*)0>(hb_array_t<hb_aat_map_builder_t::feature_info_t> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Script> const>::hb_sorted_array_t<OT::Record<OT::Script> const, (void*)0>(hb_array_t<OT::Record<OT::Script> const> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Feature> const>::hb_sorted_array_t<OT::Record<OT::Feature> const, (void*)0>(hb_array_t<OT::Record<OT::Feature> const> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::LangSys> const>::hb_sorted_array_t<OT::Record<OT::LangSys> const, (void*)0>(hb_array_t<OT::Record<OT::LangSys> const> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_ot_map_builder_t::feature_info_t>::hb_sorted_array_t<hb_ot_map_builder_t::feature_info_t, (void*)0>(hb_array_t<hb_ot_map_builder_t::feature_info_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_ot_map_t::feature_map_t>::hb_sorted_array_t<hb_ot_map_t::feature_map_t, (void*)0>(hb_array_t<hb_ot_map_t::feature_map_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_ot_map_t::lookup_map_t>::hb_sorted_array_t<hb_ot_map_t::lookup_map_t, (void*)0>(hb_array_t<hb_ot_map_t::lookup_map_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>::hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int>, (void*)0>(hb_array_t<hb_pair_t<unsigned int, unsigned int> > const&)
Unexecuted instantiation: hb_sorted_array_t<hb_serialize_context_t::object_t::link_t>::hb_sorted_array_t<hb_serialize_context_t::object_t::link_t, (void*)0>(hb_array_t<hb_serialize_context_t::object_t::link_t> const&)
Unexecuted instantiation: hb_sorted_array_t<lookup_size_t>::hb_sorted_array_t<lookup_size_t, (void*)0>(hb_array_t<lookup_size_t> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::NameRecord>::hb_sorted_array_t<OT::NameRecord, (void*)0>(hb_array_t<OT::NameRecord> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::EncodingRecord const>::hb_sorted_array_t<OT::EncodingRecord const, (void*)0>(hb_array_t<OT::EncodingRecord const> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>::hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const, (void*)0>(hb_array_t<hb_pair_t<unsigned int, unsigned int> const> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::hb_sorted_array_t<OT::UVSMapping const, (void*)0>(hb_array_t<OT::UVSMapping const> const&)
Unexecuted instantiation: hb_sorted_array_t<unsigned int>::hb_sorted_array_t<unsigned int, (void*)0>(hb_array_t<unsigned int> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::delta_row_encoding_t>::hb_sorted_array_t<OT::delta_row_encoding_t, (void*)0>(hb_array_t<OT::delta_row_encoding_t> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_vector_t<int, false> const*>::hb_sorted_array_t<hb_vector_t<int, false> const*, (void*)0>(hb_array_t<hb_vector_t<int, false> const*> const&)
Unexecuted instantiation: hb_sorted_array_t<unsigned int const>::hb_sorted_array_t<unsigned int, (void*)0>(hb_array_t<unsigned int> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::VertOriginMetric const>::hb_sorted_array_t<OT::VertOriginMetric const, (void*)0>(hb_array_t<OT::VertOriginMetric const> const&)
Unexecuted instantiation: hb_sorted_array_t<OT::AxisValueMap>::hb_sorted_array_t<OT::AxisValueMap, (void*)0>(hb_array_t<OT::AxisValueMap> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, face_table_info_t> >::hb_sorted_array_t<hb_pair_t<unsigned int, face_table_info_t>, (void*)0>(hb_array_t<hb_pair_t<unsigned int, face_table_info_t> > const&)
Unexecuted instantiation: hb_sorted_array_t<OT::TableRecord>::hb_sorted_array_t<OT::TableRecord, (void*)0>(hb_array_t<OT::TableRecord> const&)
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> >::hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int>, (void*)0>(hb_array_t<hb_pair_t<unsigned int, unsigned int> > const&)
371
  template <typename U,
372
      hb_enable_if (hb_is_cr_convertible(U, Type))>
373
  hb_sorted_array_t& operator = (const hb_array_t<U> &o)
374
  { hb_array_t<Type> (*this) = o; return *this; }
375
376
  /* Iterator implementation. */
377
378
  /* See comment in hb_array_of::operator != */
379
  bool operator != (const hb_sorted_array_t& o) const
380
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
381
382
  /* Faster range-based for loop without bounds-check. */
383
0
  Type *begin () const { return this->arrayZ; }
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord const>::begin() const
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::begin() const
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
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> 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
384
0
  Type *end () const { return this->arrayZ + this->length; }
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord const>::end() const
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const>::end() const
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
Unexecuted instantiation: hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> 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
385
386
387
  hb_sorted_array_t sub_array (unsigned int start_offset, unsigned int *seg_count /* IN/OUT */) const
388
0
  { return hb_sorted_array_t (((const hb_array_t<Type> *) (this))->sub_array (start_offset, seg_count)); }
Unexecuted instantiation: hb_sorted_array_t<OT::TableRecord 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
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::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
389
  hb_sorted_array_t sub_array (unsigned int start_offset, unsigned int seg_count) const
390
  { return sub_array (start_offset, &seg_count); }
391
392
  hb_sorted_array_t truncate (unsigned length) const { return sub_array (0, length); }
393
394
  template <typename T>
395
  Type *bsearch (const T &x, Type *not_found = nullptr)
396
0
  {
397
0
    unsigned int i;
398
0
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
399
0
  }
Unexecuted instantiation: 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*)
Unexecuted instantiation: OT::VariationSelectorRecord const* hb_sorted_array_t<OT::VariationSelectorRecord const>::bsearch<unsigned int>(unsigned int const&, OT::VariationSelectorRecord const*)
Unexecuted instantiation: OT::EncodingRecord const* hb_sorted_array_t<OT::EncodingRecord const>::bsearch<OT::EncodingRecord>(OT::EncodingRecord const&, OT::EncodingRecord const*)
Unexecuted instantiation: OT::CmapSubtableLongGroup const* hb_sorted_array_t<OT::CmapSubtableLongGroup const>::bsearch<unsigned int>(unsigned int const&, OT::CmapSubtableLongGroup const*)
Unexecuted instantiation: OT::OS2Range const* hb_sorted_array_t<OT::OS2Range const>::bsearch<unsigned int>(unsigned int const&, OT::OS2Range const*)
Unexecuted instantiation: 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*)
Unexecuted instantiation: OT::UnicodeValueRange const* hb_sorted_array_t<OT::UnicodeValueRange const>::bsearch<unsigned int>(unsigned int const&, OT::UnicodeValueRange const*)
Unexecuted instantiation: OT::UVSMapping const* hb_sorted_array_t<OT::UVSMapping const>::bsearch<unsigned int>(unsigned int const&, OT::UVSMapping 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*)
Unexecuted instantiation: 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*)
Unexecuted instantiation: OT::SVGDocumentIndexEntry const* hb_sorted_array_t<OT::SVGDocumentIndexEntry const>::bsearch<unsigned int>(unsigned int const&, OT::SVGDocumentIndexEntry const*)
Unexecuted instantiation: OT::BaseGlyphPaintRecord const* hb_sorted_array_t<OT::BaseGlyphPaintRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseGlyphPaintRecord 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::BaseGlyphRecord const* hb_sorted_array_t<OT::BaseGlyphRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseGlyphRecord const*)
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*)
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*)
Unexecuted instantiation: OT::BaseScriptRecord const* hb_sorted_array_t<OT::BaseScriptRecord const>::bsearch<unsigned int>(unsigned int const&, OT::BaseScriptRecord const*)
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*)
400
  template <typename T>
401
  const Type *bsearch (const T &x, const Type *not_found = nullptr) const
402
  {
403
    unsigned int i;
404
    return bfind (x, &i) ? &this->arrayZ[i] : not_found;
405
  }
406
  template <typename T>
407
  bool bfind (const T &x, unsigned int *i = nullptr,
408
        hb_not_found_t not_found = HB_NOT_FOUND_DONT_STORE,
409
        unsigned int to_store = (unsigned int) -1) const
410
0
  {
411
0
    unsigned pos;
412
413
0
    if (bsearch_impl (x, &pos))
414
0
    {
415
0
      if (i)
416
0
  *i = pos;
417
0
      return true;
418
0
    }
419
420
0
    if (i)
421
0
    {
422
0
      switch (not_found)
423
0
      {
424
0
  case HB_NOT_FOUND_DONT_STORE:
425
0
    break;
426
427
0
  case HB_NOT_FOUND_STORE:
428
0
    *i = to_store;
429
0
    break;
430
431
0
  case HB_NOT_FOUND_STORE_CLOSEST:
432
0
    *i = pos;
433
0
    break;
434
0
      }
435
0
    }
436
0
    return false;
437
0
  }
Unexecuted instantiation: 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
Unexecuted instantiation: 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
Unexecuted instantiation: 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
Unexecuted instantiation: bool hb_sorted_array_t<OT::TableRecord const>::bfind<OT::Tag>(OT::Tag const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::VariationSelectorRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::EncodingRecord const>::bfind<OT::EncodingRecord>(OT::EncodingRecord const&, unsigned int*, hb_not_found_t, unsigned int) const
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
Unexecuted instantiation: bool hb_sorted_array_t<OT::OS2Range const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::HBGlyphID16 const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: 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
Unexecuted instantiation: 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
Unexecuted instantiation: bool hb_sorted_array_t<OT::UnicodeValueRange const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::UVSMapping 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::Record<OT::Script> 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::Feature> const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
Unexecuted instantiation: 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
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::VertOriginMetric const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
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::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::BaseGlyphRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
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
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
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseScriptRecord const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
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
Unexecuted instantiation: bool hb_sorted_array_t<LangTag const>::bfind<unsigned int>(unsigned int const&, unsigned int*, hb_not_found_t, unsigned int) const
438
  template <typename T, typename ...Ts>
439
  bool bsearch_impl (const T &x, unsigned *pos, Ts... ds) const
440
0
  {
441
0
    return hb_bsearch_impl (pos,
442
0
          x,
443
0
          this->arrayZ,
444
0
          this->length,
445
0
          sizeof (Type),
446
0
          _hb_cmp_method<T, Type, Ts...>,
447
0
          std::forward<Ts> (ds)...);
448
0
  }
Unexecuted instantiation: bool hb_sorted_array_t<hb_ot_map_t::feature_map_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<hb_bit_set_t::page_map_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: 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
Unexecuted instantiation: bool hb_sorted_array_t<OT::TableRecord const>::bsearch_impl<OT::Tag>(OT::Tag const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::VariationSelectorRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::EncodingRecord const>::bsearch_impl<OT::EncodingRecord>(OT::EncodingRecord const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::CmapSubtableLongGroup const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::OS2Range const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::HBGlyphID16 const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::LangSys> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::UnicodeValueRange const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::UVSMapping 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::Record<OT::Script> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::Record<OT::Feature> const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<AAT::KernPair const>::bsearch_impl<AAT::hb_glyph_pair_t>(AAT::hb_glyph_pair_t 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::VertOriginMetric const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
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::ClipRecord 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<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
Unexecuted instantiation: bool hb_sorted_array_t<sid_to_gid_t const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
Unexecuted instantiation: bool hb_sorted_array_t<OT::BaseScriptRecord const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
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
Unexecuted instantiation: bool hb_sorted_array_t<LangTag const>::bsearch_impl<unsigned int>(unsigned int const&, unsigned int*) const
449
};
450
template <typename T> inline hb_sorted_array_t<T>
451
hb_sorted_array (T *array, unsigned int length)
452
0
{ return hb_sorted_array_t<T> (array, length); }
Unexecuted instantiation: hb_sorted_array_t<OT::TableRecord const> hb_sorted_array<OT::TableRecord const>(OT::TableRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord const> hb_sorted_array<OT::VariationSelectorRecord const>(OT::VariationSelectorRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::UVSMapping const> hb_sorted_array<OT::UVSMapping const>(OT::UVSMapping const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::EncodingRecord const> hb_sorted_array<OT::EncodingRecord const>(OT::EncodingRecord const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::CmapSubtableLongGroup const> hb_sorted_array<OT::CmapSubtableLongGroup const>(OT::CmapSubtableLongGroup const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::HBGlyphID16 const> hb_sorted_array<OT::HBGlyphID16 const>(OT::HBGlyphID16 const*, unsigned int)
Unexecuted instantiation: 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)
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)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::LangSys> const> hb_sorted_array<OT::Record<OT::LangSys> const>(OT::Record<OT::LangSys> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::Record<OT::Script> const> hb_sorted_array<OT::Record<OT::Script> const>(OT::Record<OT::Script> const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::UnicodeValueRange const> hb_sorted_array<OT::UnicodeValueRange const>(OT::UnicodeValueRange const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::VariationSelectorRecord> hb_sorted_array<OT::VariationSelectorRecord>(OT::VariationSelectorRecord*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<AAT::KernPair const> hb_sorted_array<AAT::KernPair const>(AAT::KernPair 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::VertOriginMetric const> hb_sorted_array<OT::VertOriginMetric const>(OT::VertOriginMetric const*, 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::ClipRecord const> hb_sorted_array<OT::ClipRecord const>(OT::ClipRecord 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::HBGlyphID16> hb_sorted_array<OT::HBGlyphID16>(OT::HBGlyphID16*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<AAT::FeatureName const> hb_sorted_array<AAT::FeatureName const>(AAT::FeatureName const*, unsigned int)
Unexecuted instantiation: hb_sorted_array_t<OT::BaseScriptRecord const> hb_sorted_array<OT::BaseScriptRecord const>(OT::BaseScriptRecord const*, unsigned int)
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<LangTag const> hb_sorted_array<LangTag const>(LangTag const*, unsigned int)
453
template <typename T, unsigned int length_> inline hb_sorted_array_t<T>
454
hb_sorted_array (T (&array_)[length_])
455
0
{ return hb_sorted_array_t<T> (array_); }
Unexecuted instantiation: hb_sorted_array_t<OT::OS2Range const> hb_sorted_array<OT::OS2Range const, 169u>(OT::OS2Range const (&) [169u])
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])
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])
456
457
template <typename T>
458
inline bool hb_array_t<T>::operator == (const hb_array_t<T> &o) const
459
0
{
460
0
  if (o.length != this->length) return false;
461
0
  for (unsigned int i = 0; i < this->length; i++) {
462
0
    if (this->arrayZ[i] != o.arrayZ[i]) return false;
463
0
  }
464
0
  return true;
465
0
}
Unexecuted instantiation: hb_array_t<bool const>::operator==(hb_array_t<bool const> const&) const
Unexecuted instantiation: hb_array_t<int const>::operator==(hb_array_t<int const> const&) const
466
template <>
467
inline bool hb_array_t<const char>::operator == (const hb_array_t<const char> &o) const
468
0
{
469
0
  if (o.length != this->length) return false;
470
0
  return 0 == hb_memcmp (arrayZ, o.arrayZ, length);
471
0
}
472
template <>
473
inline bool hb_array_t<const unsigned char>::operator == (const hb_array_t<const unsigned char> &o) const
474
0
{
475
0
  if (o.length != this->length) return false;
476
0
  return 0 == hb_memcmp (arrayZ, o.arrayZ, length);
477
0
}
478
479
480
/* Specialize hash() for byte arrays. */
481
482
#ifndef HB_OPTIMIZE_SIZE_MORE
483
template <>
484
inline uint32_t hb_array_t<const char>::hash () const
485
0
{
486
  // https://github.com/harfbuzz/harfbuzz/pull/4228
487
0
  return fasthash32(arrayZ, length, 0xf437ffe6 /* magic? */);
488
0
}
489
490
template <>
491
inline uint32_t hb_array_t<const unsigned char>::hash () const
492
0
{
493
0
  // https://github.com/harfbuzz/harfbuzz/pull/4228
494
0
  return fasthash32(arrayZ, length, 0xf437ffe6 /* magic? */);
495
0
}
496
#endif
497
498
499
typedef hb_array_t<const char> hb_bytes_t;
500
typedef hb_array_t<const unsigned char> hb_ubytes_t;
501
502
503
504
#endif /* HB_ARRAY_HH */