/src/harfbuzz/src/hb-serialize.hh
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * Copyright © 2007,2008,2009,2010 Red Hat, Inc. |
3 | | * Copyright © 2012,2018 Google, Inc. |
4 | | * Copyright © 2019 Facebook, Inc. |
5 | | * |
6 | | * This is part of HarfBuzz, a text shaping library. |
7 | | * |
8 | | * Permission is hereby granted, without written agreement and without |
9 | | * license or royalty fees, to use, copy, modify, and distribute this |
10 | | * software and its documentation for any purpose, provided that the |
11 | | * above copyright notice and the following two paragraphs appear in |
12 | | * all copies of this software. |
13 | | * |
14 | | * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR |
15 | | * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES |
16 | | * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN |
17 | | * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH |
18 | | * DAMAGE. |
19 | | * |
20 | | * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, |
21 | | * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND |
22 | | * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS |
23 | | * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO |
24 | | * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
25 | | * |
26 | | * Red Hat Author(s): Behdad Esfahbod |
27 | | * Google Author(s): Behdad Esfahbod |
28 | | * Facebook Author(s): Behdad Esfahbod |
29 | | */ |
30 | | |
31 | | #ifndef HB_SERIALIZE_HH |
32 | | #define HB_SERIALIZE_HH |
33 | | |
34 | | #include "hb.hh" |
35 | | #include "hb-blob.hh" |
36 | | #include "hb-map.hh" |
37 | | #include "hb-pool.hh" |
38 | | |
39 | | #ifdef HB_EXPERIMENTAL_API |
40 | | #include "hb-subset-repacker.h" |
41 | | #endif |
42 | | |
43 | | /* |
44 | | * Serialize |
45 | | */ |
46 | | |
47 | | enum hb_serialize_error_t { |
48 | | HB_SERIALIZE_ERROR_NONE = 0x00000000u, |
49 | | HB_SERIALIZE_ERROR_OTHER = 0x00000001u, |
50 | | HB_SERIALIZE_ERROR_OFFSET_OVERFLOW = 0x00000002u, |
51 | | HB_SERIALIZE_ERROR_OUT_OF_ROOM = 0x00000004u, |
52 | | HB_SERIALIZE_ERROR_INT_OVERFLOW = 0x00000008u, |
53 | | HB_SERIALIZE_ERROR_ARRAY_OVERFLOW = 0x00000010u |
54 | | }; |
55 | | HB_MARK_AS_FLAG_T (hb_serialize_error_t); |
56 | | |
57 | | struct hb_serialize_context_t |
58 | | { |
59 | | typedef unsigned objidx_t; |
60 | | |
61 | | enum whence_t { |
62 | | Head, /* Relative to the current object head (default). */ |
63 | | Tail, /* Relative to the current object tail after packed. */ |
64 | | Absolute /* Absolute: from the start of the serialize buffer. */ |
65 | | }; |
66 | | |
67 | | |
68 | | |
69 | | struct object_t |
70 | | { |
71 | 515k | void fini () { |
72 | 515k | real_links.fini (); |
73 | 515k | virtual_links.fini (); |
74 | 515k | } |
75 | | |
76 | | object_t () = default; |
77 | | |
78 | | #ifdef HB_EXPERIMENTAL_API |
79 | | object_t (const hb_object_t &o) |
80 | 0 | { |
81 | 0 | head = o.head; |
82 | 0 | tail = o.tail; |
83 | 0 | next = nullptr; |
84 | 0 | real_links.alloc (o.num_real_links, true); |
85 | 0 | for (unsigned i = 0 ; i < o.num_real_links; i++) |
86 | 0 | real_links.push (o.real_links[i]); |
87 | 0 |
|
88 | 0 | virtual_links.alloc (o.num_virtual_links, true); |
89 | 0 | for (unsigned i = 0; i < o.num_virtual_links; i++) |
90 | 0 | virtual_links.push (o.virtual_links[i]); |
91 | 0 | } |
92 | | #endif |
93 | | |
94 | | friend void swap (object_t& a, object_t& b) |
95 | 0 | { |
96 | 0 | hb_swap (a.head, b.head); |
97 | 0 | hb_swap (a.tail, b.tail); |
98 | 0 | hb_swap (a.next, b.next); |
99 | 0 | hb_swap (a.real_links, b.real_links); |
100 | 0 | hb_swap (a.virtual_links, b.virtual_links); |
101 | 0 | } |
102 | | |
103 | | bool operator == (const object_t &o) const |
104 | 367k | { |
105 | | // Virtual links aren't considered for equality since they don't affect the functionality |
106 | | // of the object. |
107 | 367k | return (tail - head == o.tail - o.head) |
108 | 367k | && (real_links.length == o.real_links.length) |
109 | 367k | && 0 == hb_memcmp (head, o.head, tail - head) |
110 | 367k | && real_links.as_bytes () == o.real_links.as_bytes (); |
111 | 367k | } |
112 | | uint32_t hash () const |
113 | 477k | { |
114 | | // Virtual links aren't considered for equality since they don't affect the functionality |
115 | | // of the object. |
116 | 477k | return hb_bytes_t (head, tail - head).hash () ^ |
117 | 477k | real_links.as_bytes ().hash (); |
118 | 477k | } |
119 | | |
120 | | struct link_t |
121 | | { |
122 | | unsigned width: 3; |
123 | | unsigned is_signed: 1; |
124 | | unsigned whence: 2; |
125 | | unsigned bias : 26; |
126 | | unsigned position; |
127 | | objidx_t objidx; |
128 | | |
129 | | link_t () = default; |
130 | | |
131 | | #ifdef HB_EXPERIMENTAL_API |
132 | | link_t (const hb_link_t &o) |
133 | 0 | { |
134 | 0 | width = o.width; |
135 | 0 | is_signed = 0; |
136 | 0 | whence = 0; |
137 | 0 | position = o.position; |
138 | 0 | bias = 0; |
139 | 0 | objidx = o.objidx; |
140 | 0 | } |
141 | | #endif |
142 | | |
143 | | HB_INTERNAL static int cmp (const void* a, const void* b) |
144 | 0 | { |
145 | 0 | int cmp = ((const link_t*)a)->position - ((const link_t*)b)->position; |
146 | 0 | if (cmp) return cmp; |
147 | 0 |
|
148 | 0 | return ((const link_t*)a)->objidx - ((const link_t*)b)->objidx; |
149 | 0 | } |
150 | | }; |
151 | | |
152 | | char *head; |
153 | | char *tail; |
154 | | hb_vector_t<link_t> real_links; |
155 | | hb_vector_t<link_t> virtual_links; |
156 | | object_t *next; |
157 | | |
158 | | auto all_links () const HB_AUTO_RETURN |
159 | | (( hb_concat (this->real_links, this->virtual_links) )); |
160 | | auto all_links_writer () HB_AUTO_RETURN |
161 | | (( hb_concat (this->real_links.writer (), this->virtual_links.writer ()) )); |
162 | | }; |
163 | | |
164 | | struct snapshot_t |
165 | | { |
166 | | char *head; |
167 | | char *tail; |
168 | | object_t *current; // Just for sanity check |
169 | | unsigned num_real_links; |
170 | | unsigned num_virtual_links; |
171 | | hb_serialize_error_t errors; |
172 | | }; |
173 | | |
174 | | snapshot_t snapshot () |
175 | 0 | { return snapshot_t { |
176 | 0 | head, tail, current, current->real_links.length, current->virtual_links.length, errors }; } |
177 | | |
178 | | hb_serialize_context_t (void *start_, unsigned int size) : |
179 | | start ((char *) start_), |
180 | | end (start + size), |
181 | | current (nullptr) |
182 | 34.6k | { reset (); } |
183 | 34.6k | ~hb_serialize_context_t () { fini (); } |
184 | | |
185 | | void fini () |
186 | 69.2k | { |
187 | 322k | for (object_t *_ : ++hb_iter (packed)) _->fini (); |
188 | 69.2k | packed.fini (); |
189 | 69.2k | this->packed_map.fini (); |
190 | | |
191 | 77.3k | while (current) |
192 | 8.05k | { |
193 | 8.05k | auto *_ = current; |
194 | 8.05k | current = current->next; |
195 | 8.05k | _->fini (); |
196 | 8.05k | } |
197 | 69.2k | } |
198 | | |
199 | 4.75M | bool in_error () const { return bool (errors); } |
200 | | |
201 | 776k | bool successful () const { return !bool (errors); } |
202 | | |
203 | 0 | HB_NODISCARD bool ran_out_of_room () const { return errors & HB_SERIALIZE_ERROR_OUT_OF_ROOM; } |
204 | 3.49k | HB_NODISCARD bool offset_overflow () const { return errors & HB_SERIALIZE_ERROR_OFFSET_OVERFLOW; } |
205 | 0 | HB_NODISCARD bool only_offset_overflow () const { return errors == HB_SERIALIZE_ERROR_OFFSET_OVERFLOW; } |
206 | | HB_NODISCARD bool only_overflow () const |
207 | 5.30k | { |
208 | 5.30k | return errors == HB_SERIALIZE_ERROR_OFFSET_OVERFLOW |
209 | 5.30k | || errors == HB_SERIALIZE_ERROR_INT_OVERFLOW |
210 | 5.30k | || errors == HB_SERIALIZE_ERROR_ARRAY_OVERFLOW; |
211 | 5.30k | } |
212 | | |
213 | | void reset (void *start_, unsigned int size) |
214 | 0 | { |
215 | 0 | start = (char*) start_; |
216 | 0 | end = start + size; |
217 | 0 | reset (); |
218 | 0 | current = nullptr; |
219 | 0 | } |
220 | | |
221 | | void reset () |
222 | 34.6k | { |
223 | 34.6k | this->errors = HB_SERIALIZE_ERROR_NONE; |
224 | 34.6k | this->head = this->start; |
225 | 34.6k | this->tail = this->end; |
226 | 34.6k | this->zerocopy = nullptr; |
227 | 34.6k | this->debug_depth = 0; |
228 | | |
229 | 34.6k | fini (); |
230 | 34.6k | this->packed.push (nullptr); |
231 | 34.6k | this->packed_map.init (); |
232 | 34.6k | } |
233 | | |
234 | | bool check_success (bool success, |
235 | | hb_serialize_error_t err_type = HB_SERIALIZE_ERROR_OTHER) |
236 | 712k | { |
237 | 712k | return successful () |
238 | 712k | && (success || err (err_type)); |
239 | 712k | } |
240 | | |
241 | | template <typename T1, typename T2> |
242 | | bool check_equal (T1 &&v1, T2 &&v2, hb_serialize_error_t err_type) |
243 | 903k | { |
244 | 903k | if ((long long) v1 != (long long) v2) |
245 | 0 | { |
246 | 0 | return err (err_type); |
247 | 0 | } |
248 | 903k | return true; |
249 | 903k | } Unexecuted instantiation: bool hb_serialize_context_t::check_equal<BEInt<int, 4>&, unsigned int&>(BEInt<int, 4>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<BEInt<short, 2>&, unsigned int&>(BEInt<short, 2>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<BEInt<unsigned int, 4>&, unsigned int&>(BEInt<unsigned int, 4>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<BEInt<unsigned int, 3>&, unsigned int&>(BEInt<unsigned int, 3>&, unsigned int&, hb_serialize_error_t) bool hb_serialize_context_t::check_equal<BEInt<unsigned short, 2>&, unsigned int&>(BEInt<unsigned short, 2>&, unsigned int&, hb_serialize_error_t) Line | Count | Source | 243 | 387k | { | 244 | 387k | if ((long long) v1 != (long long) v2) | 245 | 0 | { | 246 | 0 | return err (err_type); | 247 | 0 | } | 248 | 387k | return true; | 249 | 387k | } |
Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned int, 3u>&, unsigned int&>(OT::IntType<unsigned int, 3u>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned short, 2u>&, unsigned int const&>(OT::IntType<unsigned short, 2u>&, unsigned int const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<short, 2u>&, int&>(OT::IntType<short, 2u>&, int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned short, 2u>&, int&>(OT::IntType<unsigned short, 2u>&, int&, hb_serialize_error_t) bool hb_serialize_context_t::check_equal<OT::IntType<unsigned short, 2u>&, unsigned int&>(OT::IntType<unsigned short, 2u>&, unsigned int&, hb_serialize_error_t) Line | Count | Source | 243 | 515k | { | 244 | 515k | if ((long long) v1 != (long long) v2) | 245 | 0 | { | 246 | 0 | return err (err_type); | 247 | 0 | } | 248 | 515k | return true; | 249 | 515k | } |
Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::Layout::GPOS_impl::ValueFormat&, OT::Layout::GPOS_impl::ValueFormat&>(OT::Layout::GPOS_impl::ValueFormat&, OT::Layout::GPOS_impl::ValueFormat&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<short, 2u>&, float&>(OT::IntType<short, 2u>&, float&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned short, 2u>&, float&>(OT::IntType<unsigned short, 2u>&, float&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned int, 4u>&, unsigned int&>(OT::IntType<unsigned int, 4u>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned int, 4u>&, unsigned int const&>(OT::IntType<unsigned int, 4u>&, unsigned int const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::Extend&, OT::Extend const&>(OT::Extend&, OT::Extend const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned short, 2u>&, OT::IntType<unsigned short, 2u> const&>(OT::IntType<unsigned short, 2u>&, OT::IntType<unsigned short, 2u> const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<unsigned char, 1u>&, OT::IntType<unsigned char, 1u> const&>(OT::IntType<unsigned char, 1u>&, OT::IntType<unsigned char, 1u> const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::HBGlyphID16&, unsigned int const&>(OT::HBGlyphID16&, unsigned int const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::OffsetTo<OT::AxisRecord, OT::IntType<unsigned short, 2u>, true>&, unsigned int&>(OT::OffsetTo<OT::AxisRecord, OT::IntType<unsigned short, 2u>, true>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::IntType<int, 4u>&, int&>(OT::IntType<int, 4u>&, int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_equal<OT::OffsetTo<OT::UnsizedArrayOf<OT::StatAxisRecord>, OT::IntType<unsigned int, 4u>, false>&, unsigned int&>(OT::OffsetTo<OT::UnsizedArrayOf<OT::StatAxisRecord>, OT::IntType<unsigned int, 4u>, false>&, unsigned int&, hb_serialize_error_t) |
250 | | |
251 | | template <typename T1, typename T2> |
252 | | bool check_assign (T1 &v1, T2 &&v2, hb_serialize_error_t err_type) |
253 | 903k | { return check_equal (v1 = v2, v2, err_type); } Unexecuted instantiation: bool hb_serialize_context_t::check_assign<BEInt<int, 4>, unsigned int&>(BEInt<int, 4>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<BEInt<short, 2>, unsigned int&>(BEInt<short, 2>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<BEInt<unsigned int, 4>, unsigned int&>(BEInt<unsigned int, 4>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<BEInt<unsigned int, 3>, unsigned int&>(BEInt<unsigned int, 3>&, unsigned int&, hb_serialize_error_t) bool hb_serialize_context_t::check_assign<BEInt<unsigned short, 2>, unsigned int&>(BEInt<unsigned short, 2>&, unsigned int&, hb_serialize_error_t) Line | Count | Source | 253 | 387k | { return check_equal (v1 = v2, v2, err_type); } |
Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned int, 3u>, unsigned int&>(OT::IntType<unsigned int, 3u>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned short, 2u>, unsigned int const&>(OT::IntType<unsigned short, 2u>&, unsigned int const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<short, 2u>, int>(OT::IntType<short, 2u>&, int&&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned short, 2u>, int>(OT::IntType<unsigned short, 2u>&, int&&, hb_serialize_error_t) bool hb_serialize_context_t::check_assign<OT::IntType<unsigned short, 2u>, unsigned int&>(OT::IntType<unsigned short, 2u>&, unsigned int&, hb_serialize_error_t) Line | Count | Source | 253 | 205k | { return check_equal (v1 = v2, v2, err_type); } |
Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::Layout::GPOS_impl::ValueFormat, OT::Layout::GPOS_impl::ValueFormat&>(OT::Layout::GPOS_impl::ValueFormat&, OT::Layout::GPOS_impl::ValueFormat&, hb_serialize_error_t) bool hb_serialize_context_t::check_assign<OT::IntType<unsigned short, 2u>, unsigned int>(OT::IntType<unsigned short, 2u>&, unsigned int&&, hb_serialize_error_t) Line | Count | Source | 253 | 309k | { return check_equal (v1 = v2, v2, err_type); } |
Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<short, 2u>, float>(OT::IntType<short, 2u>&, float&&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned short, 2u>, float>(OT::IntType<unsigned short, 2u>&, float&&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned int, 4u>, unsigned int>(OT::IntType<unsigned int, 4u>&, unsigned int&&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned int, 4u>, unsigned int const&>(OT::IntType<unsigned int, 4u>&, unsigned int const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::Extend, OT::Extend const&>(OT::Extend&, OT::Extend const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> const&>(OT::IntType<unsigned short, 2u>&, OT::IntType<unsigned short, 2u> const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned char, 1u>, OT::IntType<unsigned char, 1u> const&>(OT::IntType<unsigned char, 1u>&, OT::IntType<unsigned char, 1u> const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<unsigned int, 4u>, unsigned int&>(OT::IntType<unsigned int, 4u>&, unsigned int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::HBGlyphID16, unsigned int const&>(OT::HBGlyphID16&, unsigned int const&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::OffsetTo<OT::AxisRecord, OT::IntType<unsigned short, 2u>, true>, unsigned int>(OT::OffsetTo<OT::AxisRecord, OT::IntType<unsigned short, 2u>, true>&, unsigned int&&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<int, 4u>, int&>(OT::IntType<int, 4u>&, int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::IntType<short, 2u>, int&>(OT::IntType<short, 2u>&, int&, hb_serialize_error_t) Unexecuted instantiation: bool hb_serialize_context_t::check_assign<OT::OffsetTo<OT::UnsizedArrayOf<OT::StatAxisRecord>, OT::IntType<unsigned int, 4u>, false>, unsigned int>(OT::OffsetTo<OT::UnsizedArrayOf<OT::StatAxisRecord>, OT::IntType<unsigned int, 4u>, false>&, unsigned int&&, hb_serialize_error_t) |
254 | | |
255 | | template <typename T> bool propagate_error (T &&obj) |
256 | 710k | { return check_success (!hb_deref (obj).in_error ()); } bool hb_serialize_context_t::propagate_error<hb_vector_t<hb_serialize_context_t::object_t*, false>&>(hb_vector_t<hb_serialize_context_t::object_t*, false>&) Line | Count | Source | 256 | 358k | { return check_success (!hb_deref (obj).in_error ()); } |
bool hb_serialize_context_t::propagate_error<hb_hashmap_t<hb_serialize_context_t::object_t const*, unsigned int, false>&>(hb_hashmap_t<hb_serialize_context_t::object_t const*, unsigned int, false>&) Line | Count | Source | 256 | 352k | { return check_success (!hb_deref (obj).in_error ()); } |
Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_vector_t<hb_pair_t<unsigned int, unsigned int>, true>&>(hb_vector_t<hb_pair_t<unsigned int, unsigned int>, true>&) Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_set_t const&>(hb_set_t const&) Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_map_t&>(hb_map_t&) Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_vector_t<hb_pair_t<unsigned int, OT::IndexSubtableRecord const*>, false>&>(hb_vector_t<hb_pair_t<unsigned int, OT::IndexSubtableRecord const*>, false>&) |
257 | | |
258 | | template <typename T1, typename... Ts> bool propagate_error (T1 &&o1, Ts&&... os) |
259 | 34.6k | { return propagate_error (std::forward<T1> (o1)) && |
260 | 34.6k | propagate_error (std::forward<Ts> (os)...); } bool hb_serialize_context_t::propagate_error<hb_vector_t<hb_serialize_context_t::object_t*, false>&, hb_hashmap_t<hb_serialize_context_t::object_t const*, unsigned int, false>&>(hb_vector_t<hb_serialize_context_t::object_t*, false>&, hb_hashmap_t<hb_serialize_context_t::object_t const*, unsigned int, false>&) Line | Count | Source | 259 | 34.6k | { return propagate_error (std::forward<T1> (o1)) && | 260 | 34.6k | propagate_error (std::forward<Ts> (os)...); } |
Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_vector_t<hb_pair_t<unsigned int, unsigned int>, true>&, hb_set_t const&>(hb_vector_t<hb_pair_t<unsigned int, unsigned int>, true>&, hb_set_t const&) Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_map_t&, hb_map_t&, hb_map_t&>(hb_map_t&, hb_map_t&, hb_map_t&) Unexecuted instantiation: bool hb_serialize_context_t::propagate_error<hb_map_t&, hb_map_t&>(hb_map_t&, hb_map_t&) |
261 | | |
262 | | /* To be called around main operation. */ |
263 | | template <typename Type> |
264 | | Type *start_serialize () |
265 | 34.6k | { |
266 | 34.6k | DEBUG_MSG_LEVEL (SERIALIZE, this->start, 0, +1, |
267 | 34.6k | "start [%p..%p] (%lu bytes)", |
268 | 34.6k | this->start, this->end, |
269 | 34.6k | (unsigned long) (this->end - this->start)); |
270 | | |
271 | 34.6k | assert (!current); |
272 | 0 | return push<Type> (); |
273 | 34.6k | } |
274 | | void end_serialize () |
275 | 34.6k | { |
276 | 34.6k | DEBUG_MSG_LEVEL (SERIALIZE, this->start, 0, -1, |
277 | 34.6k | "end [%p..%p] serialized %u bytes; %s", |
278 | 34.6k | this->start, this->end, |
279 | 34.6k | (unsigned) (this->head - this->start), |
280 | 34.6k | successful () ? "successful" : "UNSUCCESSFUL"); |
281 | | |
282 | 34.6k | propagate_error (packed, packed_map); |
283 | | |
284 | 34.6k | if (unlikely (!current)) return; |
285 | 33.1k | if (unlikely (in_error())) |
286 | 3.49k | { |
287 | | // Offset overflows that occur before link resolution cannot be handled |
288 | | // by repacking, so set a more general error. |
289 | 3.49k | if (offset_overflow ()) err (HB_SERIALIZE_ERROR_OTHER); |
290 | 3.49k | return; |
291 | 3.49k | } |
292 | | |
293 | 29.6k | assert (!current->next); |
294 | | |
295 | | /* Only "pack" if there exist other objects... Otherwise, don't bother. |
296 | | * Saves a move. */ |
297 | 29.6k | if (packed.length <= 1) |
298 | 0 | return; |
299 | | |
300 | 29.6k | pop_pack (false); |
301 | | |
302 | 29.6k | resolve_links (); |
303 | 29.6k | } |
304 | | |
305 | | template <typename Type = void> |
306 | | Type *push () |
307 | 518k | { |
308 | 518k | if (unlikely (in_error ())) return start_embed<Type> (); |
309 | | |
310 | 516k | object_t *obj = object_pool.alloc (); |
311 | 516k | if (unlikely (!obj)) |
312 | 1.51k | check_success (false); |
313 | 515k | else |
314 | 515k | { |
315 | 515k | obj->head = head; |
316 | 515k | obj->tail = tail; |
317 | 515k | obj->next = current; |
318 | 515k | current = obj; |
319 | 515k | } |
320 | 516k | return start_embed<Type> (); |
321 | 518k | } Unexecuted instantiation: void* hb_serialize_context_t::push<void>() Unexecuted instantiation: OT::VarRegionList* hb_serialize_context_t::push<OT::VarRegionList>() Unexecuted instantiation: OT::VarData* hb_serialize_context_t::push<OT::VarData>() OT::Layout::Common::Coverage* hb_serialize_context_t::push<OT::Layout::Common::Coverage>() Line | Count | Source | 307 | 31.4k | { | 308 | 31.4k | if (unlikely (in_error ())) return start_embed<Type> (); | 309 | | | 310 | 31.1k | object_t *obj = object_pool.alloc (); | 311 | 31.1k | if (unlikely (!obj)) | 312 | 5 | check_success (false); | 313 | 31.1k | else | 314 | 31.1k | { | 315 | 31.1k | obj->head = head; | 316 | 31.1k | obj->tail = tail; | 317 | 31.1k | obj->next = current; | 318 | 31.1k | current = obj; | 319 | 31.1k | } | 320 | 31.1k | return start_embed<Type> (); | 321 | 31.4k | } |
Unexecuted instantiation: OT::CmapSubtable* hb_serialize_context_t::push<OT::CmapSubtable>() Unexecuted instantiation: OT::DeltaSetIndexMap* hb_serialize_context_t::push<OT::DeltaSetIndexMap>() Unexecuted instantiation: OT::VariationStore* hb_serialize_context_t::push<OT::VariationStore>() Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>* hb_serialize_context_t::push<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes> >() OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>* hb_serialize_context_t::push<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> >() Line | Count | Source | 307 | 108k | { | 308 | 108k | if (unlikely (in_error ())) return start_embed<Type> (); | 309 | | | 310 | 108k | object_t *obj = object_pool.alloc (); | 311 | 108k | if (unlikely (!obj)) | 312 | 23 | check_success (false); | 313 | 108k | else | 314 | 108k | { | 315 | 108k | obj->head = head; | 316 | 108k | obj->tail = tail; | 317 | 108k | obj->next = current; | 318 | 108k | current = obj; | 319 | 108k | } | 320 | 108k | return start_embed<Type> (); | 321 | 108k | } |
OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>* hb_serialize_context_t::push<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> >() Line | Count | Source | 307 | 310k | { | 308 | 310k | if (unlikely (in_error ())) return start_embed<Type> (); | 309 | | | 310 | 309k | object_t *obj = object_pool.alloc (); | 311 | 309k | if (unlikely (!obj)) | 312 | 18 | check_success (false); | 313 | 309k | else | 314 | 309k | { | 315 | 309k | obj->head = head; | 316 | 309k | obj->tail = tail; | 317 | 309k | obj->next = current; | 318 | 309k | current = obj; | 319 | 309k | } | 320 | 309k | return start_embed<Type> (); | 321 | 310k | } |
OT::Layout::GSUB_impl::SubstLookupSubTable* hb_serialize_context_t::push<OT::Layout::GSUB_impl::SubstLookupSubTable>() Line | Count | Source | 307 | 33.1k | { | 308 | 33.1k | if (unlikely (in_error ())) return start_embed<Type> (); | 309 | | | 310 | 33.1k | object_t *obj = object_pool.alloc (); | 311 | 33.1k | if (unlikely (!obj)) | 312 | 0 | check_success (false); | 313 | 33.1k | else | 314 | 33.1k | { | 315 | 33.1k | obj->head = head; | 316 | 33.1k | obj->tail = tail; | 317 | 33.1k | obj->next = current; | 318 | 33.1k | current = obj; | 319 | 33.1k | } | 320 | 33.1k | return start_embed<Type> (); | 321 | 33.1k | } |
OT::Layout::GSUB_impl::SubstLookup* hb_serialize_context_t::push<OT::Layout::GSUB_impl::SubstLookup>() Line | Count | Source | 307 | 34.6k | { | 308 | 34.6k | if (unlikely (in_error ())) return start_embed<Type> (); | 309 | | | 310 | 34.6k | object_t *obj = object_pool.alloc (); | 311 | 34.6k | if (unlikely (!obj)) | 312 | 1.46k | check_success (false); | 313 | 33.1k | else | 314 | 33.1k | { | 315 | 33.1k | obj->head = head; | 316 | 33.1k | obj->tail = tail; | 317 | 33.1k | obj->next = current; | 318 | 33.1k | current = obj; | 319 | 33.1k | } | 320 | 34.6k | return start_embed<Type> (); | 321 | 34.6k | } |
|
322 | | void pop_discard () |
323 | 5.30k | { |
324 | 5.30k | object_t *obj = current; |
325 | 5.30k | if (unlikely (!obj)) return; |
326 | 5.30k | if (unlikely (in_error() && !only_overflow ())) return; |
327 | | |
328 | 0 | current = current->next; |
329 | 0 | revert (zerocopy ? zerocopy : obj->head, obj->tail); |
330 | 0 | zerocopy = nullptr; |
331 | 0 | obj->fini (); |
332 | 0 | object_pool.release (obj); |
333 | 0 | } |
334 | | |
335 | | /* Set share to false when an object is unlikely shareable with others |
336 | | * so not worth an attempt, or a contiguous table is serialized as |
337 | | * multiple consecutive objects in the reverse order so can't be shared. |
338 | | */ |
339 | | objidx_t pop_pack (bool share=true) |
340 | 508k | { |
341 | 508k | object_t *obj = current; |
342 | 508k | if (unlikely (!obj)) return 0; |
343 | 508k | if (unlikely (in_error())) return 0; |
344 | | |
345 | 507k | current = current->next; |
346 | 507k | obj->tail = head; |
347 | 507k | obj->next = nullptr; |
348 | 507k | assert (obj->head <= obj->tail); |
349 | 0 | unsigned len = obj->tail - obj->head; |
350 | 507k | head = zerocopy ? zerocopy : obj->head; /* Rewind head. */ |
351 | 507k | bool was_zerocopy = zerocopy; |
352 | 507k | zerocopy = nullptr; |
353 | | |
354 | 507k | if (!len) |
355 | 0 | { |
356 | 0 | assert (!obj->real_links.length); |
357 | 0 | assert (!obj->virtual_links.length); |
358 | 0 | return 0; |
359 | 0 | } |
360 | | |
361 | 507k | objidx_t objidx; |
362 | 507k | uint32_t hash = 0; |
363 | 507k | if (share) |
364 | 477k | { |
365 | 477k | hash = hb_hash (obj); |
366 | 477k | objidx = packed_map.get_with_hash (obj, hash); |
367 | 477k | if (objidx) |
368 | 183k | { |
369 | 183k | merge_virtual_links (obj, objidx); |
370 | 183k | obj->fini (); |
371 | 183k | return objidx; |
372 | 183k | } |
373 | 477k | } |
374 | | |
375 | 323k | tail -= len; |
376 | 323k | if (was_zerocopy) |
377 | 0 | assert (tail == obj->head); |
378 | 323k | else |
379 | 323k | memmove (tail, obj->head, len); |
380 | | |
381 | 0 | obj->head = tail; |
382 | 323k | obj->tail = tail + len; |
383 | | |
384 | 323k | packed.push (obj); |
385 | | |
386 | 323k | if (unlikely (!propagate_error (packed))) |
387 | 1.04k | { |
388 | | /* Obj wasn't successfully added to packed, so clean it up otherwise its |
389 | | * links will be leaked. When we use constructor/destructors properly, we |
390 | | * can remove these. */ |
391 | 1.04k | obj->fini (); |
392 | 1.04k | return 0; |
393 | 1.04k | } |
394 | | |
395 | 322k | objidx = packed.length - 1; |
396 | | |
397 | 322k | if (share) packed_map.set_with_hash (obj, hash, objidx); |
398 | 322k | propagate_error (packed_map); |
399 | | |
400 | 322k | return objidx; |
401 | 323k | } |
402 | | |
403 | | void revert (snapshot_t snap) |
404 | 0 | { |
405 | 0 | // Overflows that happened after the snapshot will be erased by the revert. |
406 | 0 | if (unlikely (in_error () && !only_overflow ())) return; |
407 | 0 | assert (snap.current == current); |
408 | 0 | current->real_links.shrink (snap.num_real_links); |
409 | 0 | current->virtual_links.shrink (snap.num_virtual_links); |
410 | 0 | errors = snap.errors; |
411 | 0 | revert (snap.head, snap.tail); |
412 | 0 | } |
413 | | |
414 | | void revert (char *snap_head, |
415 | | char *snap_tail) |
416 | 0 | { |
417 | 0 | if (unlikely (in_error ())) return; |
418 | 0 | assert (snap_head <= head); |
419 | 0 | assert (tail <= snap_tail); |
420 | 0 | head = snap_head; |
421 | 0 | tail = snap_tail; |
422 | 0 | discard_stale_objects (); |
423 | 0 | } |
424 | | |
425 | | void discard_stale_objects () |
426 | 0 | { |
427 | 0 | if (unlikely (in_error ())) return; |
428 | 0 | while (packed.length > 1 && |
429 | 0 | packed.tail ()->head < tail) |
430 | 0 | { |
431 | 0 | packed_map.del (packed.tail ()); |
432 | 0 | assert (!packed.tail ()->next); |
433 | 0 | packed.tail ()->fini (); |
434 | 0 | packed.pop (); |
435 | 0 | } |
436 | 0 | if (packed.length > 1) |
437 | 0 | assert (packed.tail ()->head == tail); |
438 | 0 | } |
439 | | |
440 | | // Adds a virtual link from the current object to objidx. A virtual link is not associated with |
441 | | // an actual offset field. They are solely used to enforce ordering constraints between objects. |
442 | | // Adding a virtual link from object a to object b will ensure that object b is always packed after |
443 | | // object a in the final serialized order. |
444 | | // |
445 | | // This is useful in certain situations where there needs to be a specific ordering in the |
446 | | // final serialization. Such as when platform bugs require certain orderings, or to provide |
447 | | // guidance to the repacker for better offset overflow resolution. |
448 | | void add_virtual_link (objidx_t objidx) |
449 | 0 | { |
450 | 0 | if (unlikely (in_error ())) return; |
451 | 0 |
|
452 | 0 | if (!objidx) |
453 | 0 | return; |
454 | 0 |
|
455 | 0 | assert (current); |
456 | 0 |
|
457 | 0 | auto& link = *current->virtual_links.push (); |
458 | 0 | if (current->virtual_links.in_error ()) |
459 | 0 | err (HB_SERIALIZE_ERROR_OTHER); |
460 | 0 |
|
461 | 0 | link.width = 0; |
462 | 0 | link.objidx = objidx; |
463 | 0 | link.is_signed = 0; |
464 | 0 | link.whence = 0; |
465 | 0 | link.position = 0; |
466 | 0 | link.bias = 0; |
467 | 0 | } |
468 | | |
469 | | template <typename T> |
470 | | void add_link (T &ofs, objidx_t objidx, |
471 | | whence_t whence = Head, |
472 | | unsigned bias = 0) |
473 | 478k | { |
474 | 478k | if (unlikely (in_error ())) return; |
475 | | |
476 | 476k | if (!objidx) |
477 | 0 | return; |
478 | | |
479 | 476k | assert (current); |
480 | 0 | assert (current->head <= (const char *) &ofs); |
481 | | |
482 | 0 | auto& link = *current->real_links.push (); |
483 | 476k | if (current->real_links.in_error ()) |
484 | 1.75k | err (HB_SERIALIZE_ERROR_OTHER); |
485 | | |
486 | 476k | link.width = sizeof (T); |
487 | 476k | link.objidx = objidx; |
488 | 476k | if (unlikely (!sizeof (T))) |
489 | 0 | { |
490 | | // This link is not associated with an actual offset and exists merely to enforce |
491 | | // an ordering constraint. |
492 | 0 | link.is_signed = 0; |
493 | 0 | link.whence = 0; |
494 | 0 | link.position = 0; |
495 | 0 | link.bias = 0; |
496 | 0 | return; |
497 | 0 | } |
498 | | |
499 | 476k | link.is_signed = std::is_signed<hb_unwrap_type (T)>::value; |
500 | 476k | link.whence = (unsigned) whence; |
501 | 476k | link.position = (const char *) &ofs - current->head; |
502 | 476k | link.bias = bias; |
503 | 476k | } Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::FeatureParams, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::FeatureParams, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Feature, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Feature, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LangSys, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::LangSys, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Script, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Script, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::VarRegionList, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::VarRegionList, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Feature, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::Feature, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ConditionSet, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::ConditionSet, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::FeatureTableSubstitution, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::FeatureTableSubstitution, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Line | Count | Source | 473 | 31.1k | { | 474 | 31.1k | if (unlikely (in_error ())) return; | 475 | | | 476 | 30.4k | if (!objidx) | 477 | 0 | return; | 478 | | | 479 | 30.4k | assert (current); | 480 | 0 | assert (current->head <= (const char *) &ofs); | 481 | | | 482 | 0 | auto& link = *current->real_links.push (); | 483 | 30.4k | if (current->real_links.in_error ()) | 484 | 280 | err (HB_SERIALIZE_ERROR_OTHER); | 485 | | | 486 | 30.4k | link.width = sizeof (T); | 487 | 30.4k | link.objidx = objidx; | 488 | 30.4k | if (unlikely (!sizeof (T))) | 489 | 0 | { | 490 | | // This link is not associated with an actual offset and exists merely to enforce | 491 | | // an ordering constraint. | 492 | 0 | link.is_signed = 0; | 493 | 0 | link.whence = 0; | 494 | 0 | link.position = 0; | 495 | 0 | link.bias = 0; | 496 | 0 | return; | 497 | 0 | } | 498 | | | 499 | 30.4k | link.is_signed = std::is_signed<hb_unwrap_type (T)>::value; | 500 | 30.4k | link.whence = (unsigned) whence; | 501 | 30.4k | link.position = (const char *) &ofs - current->head; | 502 | 30.4k | link.bias = bias; | 503 | 30.4k | } |
Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ClassDef, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::ClassDef, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::AttachList, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::AttachList, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LigCaretList, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::LigCaretList, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MarkGlyphSets, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MarkGlyphSets, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::VariationStore, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::VariationStore, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ClassDef, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::ClassDef, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::AttachList, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::AttachList, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LigCaretList, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::LigCaretList, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MarkGlyphSets, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::MarkGlyphSets, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::MarkArray, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::MarkArray, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::MarkArray, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::MarkArray, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::LigatureArray, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::LigatureArray, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::LigatureArray, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::LigatureArray, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RecordListOfFeature, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::RecordListOfFeature, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RecordListOfScript, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::RecordListOfScript, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RecordListOfFeature, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::RecordListOfFeature, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::RecordListOfScript, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::RecordListOfScript, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::DefaultUVS, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::DefaultUVS, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::NonDefaultUVS, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::NonDefaultUVS, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::CmapSubtable, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::CmapSubtable, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ColorLine<OT::NoVariable>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::ColorLine<OT::NoVariable>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ColorLine<OT::Variable>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::ColorLine<OT::Variable>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::NoVariable<OT::Affine2x3>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::NoVariable<OT::Affine2x3>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Variable<OT::Affine2x3>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Variable<OT::Affine2x3>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ClipBox, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::ClipBox, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::SortedUnsizedArrayOf<OT::BaseGlyphRecord>, OT::IntType<unsigned int, 4u>, false> >(OT::OffsetTo<OT::SortedUnsizedArrayOf<OT::BaseGlyphRecord>, OT::IntType<unsigned int, 4u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::UnsizedArrayOf<OT::LayerRecord>, OT::IntType<unsigned int, 4u>, false> >(OT::OffsetTo<OT::UnsizedArrayOf<OT::LayerRecord>, OT::IntType<unsigned int, 4u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::BaseGlyphList, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::BaseGlyphList, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LayerList, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::LayerList, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::ClipList, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::ClipList, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::DeltaSetIndexMap, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::DeltaSetIndexMap, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::IndexSubtable, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::IndexSubtable, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::IndexSubtableArray, OT::IntType<unsigned int, 4u>, false> >(OT::OffsetTo<OT::IndexSubtableArray, OT::IntType<unsigned int, 4u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >, OT::IntType<unsigned int, 4u>, false> >(OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >, OT::IntType<unsigned int, 4u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::UnsizedArrayOf<OT::Index>, OT::IntType<unsigned int, 4u>, false> >(OT::OffsetTo<OT::UnsizedArrayOf<OT::Index>, OT::IntType<unsigned int, 4u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >, OT::IntType<unsigned int, 4u>, false> const>(OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >, OT::IntType<unsigned int, 4u>, false> const&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::IntType<int, 4u> >(OT::IntType<int, 4u>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::IntType<short, 2u> >(OT::IntType<short, 2u>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> >, OT::IntType<unsigned short, 2u>, false> >(OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> >, OT::IntType<unsigned short, 2u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Line | Count | Source | 473 | 309k | { | 474 | 309k | if (unlikely (in_error ())) return; | 475 | | | 476 | 308k | if (!objidx) | 477 | 0 | return; | 478 | | | 479 | 308k | assert (current); | 480 | 0 | assert (current->head <= (const char *) &ofs); | 481 | | | 482 | 0 | auto& link = *current->real_links.push (); | 483 | 308k | if (current->real_links.in_error ()) | 484 | 739 | err (HB_SERIALIZE_ERROR_OTHER); | 485 | | | 486 | 308k | link.width = sizeof (T); | 487 | 308k | link.objidx = objidx; | 488 | 308k | if (unlikely (!sizeof (T))) | 489 | 0 | { | 490 | | // This link is not associated with an actual offset and exists merely to enforce | 491 | | // an ordering constraint. | 492 | 0 | link.is_signed = 0; | 493 | 0 | link.whence = 0; | 494 | 0 | link.position = 0; | 495 | 0 | link.bias = 0; | 496 | 0 | return; | 497 | 0 | } | 498 | | | 499 | 308k | link.is_signed = std::is_signed<hb_unwrap_type (T)>::value; | 500 | 308k | link.whence = (unsigned) whence; | 501 | 308k | link.position = (const char *) &ofs - current->head; | 502 | 308k | link.bias = bias; | 503 | 308k | } |
void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Line | Count | Source | 473 | 106k | { | 474 | 106k | if (unlikely (in_error ())) return; | 475 | | | 476 | 106k | if (!objidx) | 477 | 0 | return; | 478 | | | 479 | 106k | assert (current); | 480 | 0 | assert (current->head <= (const char *) &ofs); | 481 | | | 482 | 0 | auto& link = *current->real_links.push (); | 483 | 106k | if (current->real_links.in_error ()) | 484 | 300 | err (HB_SERIALIZE_ERROR_OTHER); | 485 | | | 486 | 106k | link.width = sizeof (T); | 487 | 106k | link.objidx = objidx; | 488 | 106k | if (unlikely (!sizeof (T))) | 489 | 0 | { | 490 | | // This link is not associated with an actual offset and exists merely to enforce | 491 | | // an ordering constraint. | 492 | 0 | link.is_signed = 0; | 493 | 0 | link.whence = 0; | 494 | 0 | link.position = 0; | 495 | 0 | link.bias = 0; | 496 | 0 | return; | 497 | 0 | } | 498 | | | 499 | 106k | link.is_signed = std::is_signed<hb_unwrap_type (T)>::value; | 500 | 106k | link.whence = (unsigned) whence; | 501 | 106k | link.position = (const char *) &ofs - current->head; | 502 | 106k | link.bias = bias; | 503 | 106k | } |
void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Line | Count | Source | 473 | 31.1k | { | 474 | 31.1k | if (unlikely (in_error ())) return; | 475 | | | 476 | 30.1k | if (!objidx) | 477 | 0 | return; | 478 | | | 479 | 30.1k | assert (current); | 480 | 0 | assert (current->head <= (const char *) &ofs); | 481 | | | 482 | 0 | auto& link = *current->real_links.push (); | 483 | 30.1k | if (current->real_links.in_error ()) | 484 | 439 | err (HB_SERIALIZE_ERROR_OTHER); | 485 | | | 486 | 30.1k | link.width = sizeof (T); | 487 | 30.1k | link.objidx = objidx; | 488 | 30.1k | if (unlikely (!sizeof (T))) | 489 | 0 | { | 490 | | // This link is not associated with an actual offset and exists merely to enforce | 491 | | // an ordering constraint. | 492 | 0 | link.is_signed = 0; | 493 | 0 | link.whence = 0; | 494 | 0 | link.position = 0; | 495 | 0 | link.bias = 0; | 496 | 0 | return; | 497 | 0 | } | 498 | | | 499 | 30.1k | link.is_signed = std::is_signed<hb_unwrap_type (T)>::value; | 500 | 30.1k | link.whence = (unsigned) whence; | 501 | 30.1k | link.position = (const char *) &ofs - current->head; | 502 | 30.1k | link.bias = bias; | 503 | 30.1k | } |
Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned int, 4u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >, OT::IntType<unsigned int, 3u>, true> >(OT::OffsetTo<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >, OT::IntType<unsigned int, 3u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::AxisValueOffsetArray, OT::IntType<unsigned int, 4u>, false> >(OT::OffsetTo<OT::AxisValueOffsetArray, OT::IntType<unsigned int, 4u>, false>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathKern, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathKern, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathItalicsCorrectionInfo, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathItalicsCorrectionInfo, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathTopAccentAttachment, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathTopAccentAttachment, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathKernInfo, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathKernInfo, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathGlyphAssembly, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathGlyphAssembly, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathConstants, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathConstants, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathGlyphInfo, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathGlyphInfo, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::add_link<OT::OffsetTo<OT::MathVariants, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathVariants, OT::IntType<unsigned short, 2u>, true>&, unsigned int, hb_serialize_context_t::whence_t, unsigned int) |
504 | | |
505 | | unsigned to_bias (const void *base) const |
506 | 0 | { |
507 | 0 | if (unlikely (in_error ())) return 0; |
508 | 0 | if (!base) return 0; |
509 | 0 | assert (current); |
510 | 0 | assert (current->head <= (const char *) base); |
511 | 0 | return (const char *) base - current->head; |
512 | 0 | } |
513 | | |
514 | | void resolve_links () |
515 | 29.6k | { |
516 | 29.6k | if (unlikely (in_error ())) return; |
517 | | |
518 | 29.6k | assert (!current); |
519 | 0 | assert (packed.length > 1); |
520 | | |
521 | 0 | for (const object_t* parent : ++hb_iter (packed)) |
522 | 301k | for (const object_t::link_t &link : parent->real_links) |
523 | 387k | { |
524 | 387k | const object_t* child = packed[link.objidx]; |
525 | 387k | if (unlikely (!child)) { err (HB_SERIALIZE_ERROR_OTHER); return; } |
526 | 387k | unsigned offset = 0; |
527 | 387k | switch ((whence_t) link.whence) { |
528 | 387k | case Head: offset = child->head - parent->head; break; |
529 | 0 | case Tail: offset = child->head - parent->tail; break; |
530 | 0 | case Absolute: offset = (head - start) + (child->head - tail); break; |
531 | 387k | } |
532 | | |
533 | 387k | assert (offset >= link.bias); |
534 | 0 | offset -= link.bias; |
535 | 387k | if (link.is_signed) |
536 | 0 | { |
537 | 0 | assert (link.width == 2 || link.width == 4); |
538 | 0 | if (link.width == 4) |
539 | 0 | assign_offset<int32_t> (parent, link, offset); |
540 | 0 | else |
541 | 0 | assign_offset<int16_t> (parent, link, offset); |
542 | 0 | } |
543 | 387k | else |
544 | 387k | { |
545 | 387k | assert (link.width == 2 || link.width == 3 || link.width == 4); |
546 | 387k | if (link.width == 4) |
547 | 0 | assign_offset<uint32_t> (parent, link, offset); |
548 | 387k | else if (link.width == 3) |
549 | 0 | assign_offset<uint32_t, 3> (parent, link, offset); |
550 | 387k | else |
551 | 387k | assign_offset<uint16_t> (parent, link, offset); |
552 | 387k | } |
553 | 387k | } |
554 | 29.6k | } |
555 | | |
556 | | unsigned int length () const |
557 | 0 | { |
558 | 0 | if (unlikely (!current)) return 0; |
559 | 0 | return this->head - current->head; |
560 | 0 | } |
561 | | |
562 | | void align (unsigned int alignment) |
563 | 0 | { |
564 | 0 | unsigned int l = length () % alignment; |
565 | 0 | if (l) |
566 | 0 | allocate_size<void> (alignment - l); |
567 | 0 | } |
568 | | |
569 | | template <typename Type = void> |
570 | | Type *start_embed (const Type *obj HB_UNUSED = nullptr) const |
571 | 518k | { return reinterpret_cast<Type *> (this->head); } OT::Layout::Common::Coverage* hb_serialize_context_t::start_embed<OT::Layout::Common::Coverage>(OT::Layout::Common::Coverage const*) const Line | Count | Source | 571 | 31.4k | { return reinterpret_cast<Type *> (this->head); } |
Unexecuted instantiation: OT::Feature* hb_serialize_context_t::start_embed<OT::Feature>(OT::Feature const*) const Unexecuted instantiation: OT::RecordListOfFeature* hb_serialize_context_t::start_embed<OT::RecordListOfFeature>(OT::RecordListOfFeature const*) const Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::start_embed<OT::LangSys>(OT::LangSys const*) const Unexecuted instantiation: OT::Script* hb_serialize_context_t::start_embed<OT::Script>(OT::Script const*) const Unexecuted instantiation: void* hb_serialize_context_t::start_embed<void>(void const*) const Unexecuted instantiation: OT::RecordListOfScript* hb_serialize_context_t::start_embed<OT::RecordListOfScript>(OT::RecordListOfScript const*) const Unexecuted instantiation: OT::ClassDef* hb_serialize_context_t::start_embed<OT::ClassDef>(OT::ClassDef const*) const Unexecuted instantiation: OT::VarRegionList* hb_serialize_context_t::start_embed<OT::VarRegionList>(OT::VarRegionList const*) const Unexecuted instantiation: OT::VarData* hb_serialize_context_t::start_embed<OT::VarData>(OT::VarData const*) const Unexecuted instantiation: OT::VariationStore* hb_serialize_context_t::start_embed<OT::VariationStore>(OT::VariationStore const*) const Unexecuted instantiation: OT::ConditionSet* hb_serialize_context_t::start_embed<OT::ConditionSet>(OT::ConditionSet const*) const Unexecuted instantiation: OT::FeatureTableSubstitution* hb_serialize_context_t::start_embed<OT::FeatureTableSubstitution>(OT::FeatureTableSubstitution const*) const Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::start_embed<OT::FeatureVariations>(OT::FeatureVariations const*) const Unexecuted instantiation: OT::AttachPoint* hb_serialize_context_t::start_embed<OT::AttachPoint>(OT::AttachPoint const*) const Unexecuted instantiation: OT::AttachList* hb_serialize_context_t::start_embed<OT::AttachList>(OT::AttachList const*) const Unexecuted instantiation: OT::CaretValueFormat3* hb_serialize_context_t::start_embed<OT::CaretValueFormat3>(OT::CaretValueFormat3 const*) const Unexecuted instantiation: OT::LigGlyph* hb_serialize_context_t::start_embed<OT::LigGlyph>(OT::LigGlyph const*) const Unexecuted instantiation: OT::LigCaretList* hb_serialize_context_t::start_embed<OT::LigCaretList>(OT::LigCaretList const*) const Unexecuted instantiation: OT::MarkGlyphSetsFormat1* hb_serialize_context_t::start_embed<OT::MarkGlyphSetsFormat1>(OT::MarkGlyphSetsFormat1 const*) const Unexecuted instantiation: OT::ContextFormat3* hb_serialize_context_t::start_embed<OT::ContextFormat3>(OT::ContextFormat3 const*) const Unexecuted instantiation: OT::ChainContextFormat3* hb_serialize_context_t::start_embed<OT::ChainContextFormat3>(OT::ChainContextFormat3 const*) const Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::start_embed<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePos* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::SinglePos>(OT::Layout::GPOS_impl::SinglePos const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorFormat3* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::AnchorFormat3>(OT::Layout::GPOS_impl::AnchorFormat3 const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::CursivePosFormat1* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::CursivePosFormat1>(OT::Layout::GPOS_impl::CursivePosFormat1 const*) const Unexecuted instantiation: OT::Lookup* hb_serialize_context_t::start_embed<OT::Lookup>(OT::Lookup const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkArray* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkArray>(OT::Layout::GPOS_impl::MarkArray const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorMatrix* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::AnchorMatrix>(OT::Layout::GPOS_impl::AnchorMatrix const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::LigatureArray* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::LigatureArray>(OT::Layout::GPOS_impl::LigatureArray const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat1_4<OT::Layout::SmallTypes> >(OT::ContextFormat1_4<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::RuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::RuleSet<OT::Layout::SmallTypes> >(OT::RuleSet<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Rule<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Rule<OT::Layout::SmallTypes> >(OT::Rule<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat2_5<OT::Layout::SmallTypes> >(OT::ContextFormat2_5<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat1_4<OT::Layout::MediumTypes> >(OT::ContextFormat1_4<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::RuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::RuleSet<OT::Layout::MediumTypes> >(OT::RuleSet<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Rule<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Rule<OT::Layout::MediumTypes> >(OT::Rule<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat2_5<OT::Layout::MediumTypes> >(OT::ContextFormat2_5<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat1_4<OT::Layout::SmallTypes> >(OT::ChainContextFormat1_4<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainRuleSet<OT::Layout::SmallTypes> >(OT::ChainRuleSet<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::ChainRule<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainRule<OT::Layout::SmallTypes> >(OT::ChainRule<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat2_5<OT::Layout::SmallTypes> >(OT::ChainContextFormat2_5<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat1_4<OT::Layout::MediumTypes> >(OT::ChainContextFormat1_4<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainRuleSet<OT::Layout::MediumTypes> >(OT::ChainRuleSet<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ChainRule<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainRule<OT::Layout::MediumTypes> >(OT::ChainRule<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat2_5<OT::Layout::MediumTypes> >(OT::ChainContextFormat2_5<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos>* hb_serialize_context_t::start_embed<OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos> >(OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos> const*) const Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes> >(OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::start_embed<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> > >(OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> > const*) const Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes> >(OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::start_embed<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> > >(OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> > const*) const Unexecuted instantiation: OT::DefaultUVS* hb_serialize_context_t::start_embed<OT::DefaultUVS>(OT::DefaultUVS const*) const Unexecuted instantiation: OT::NonDefaultUVS* hb_serialize_context_t::start_embed<OT::NonDefaultUVS>(OT::NonDefaultUVS const*) const Unexecuted instantiation: OT::cmap* hb_serialize_context_t::start_embed<OT::cmap>(OT::cmap const*) const Unexecuted instantiation: OT::CmapSubtable* hb_serialize_context_t::start_embed<OT::CmapSubtable>(OT::CmapSubtable const*) const Unexecuted instantiation: OT::IntType<unsigned short, 2u>* hb_serialize_context_t::start_embed<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u> const*) const Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::start_embed<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> > >(OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> > const*) const Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::start_embed<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> > >(OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> > const*) const Unexecuted instantiation: OT::ColorLine<OT::NoVariable>* hb_serialize_context_t::start_embed<OT::ColorLine<OT::NoVariable> >(OT::ColorLine<OT::NoVariable> const*) const Unexecuted instantiation: OT::ColorLine<OT::Variable>* hb_serialize_context_t::start_embed<OT::ColorLine<OT::Variable> >(OT::ColorLine<OT::Variable> const*) const Unexecuted instantiation: OT::ClipList* hb_serialize_context_t::start_embed<OT::ClipList>(OT::ClipList const*) const Unexecuted instantiation: OT::BaseGlyphList* hb_serialize_context_t::start_embed<OT::BaseGlyphList>(OT::BaseGlyphList const*) const Unexecuted instantiation: OT::LayerList* hb_serialize_context_t::start_embed<OT::LayerList>(OT::LayerList const*) const Unexecuted instantiation: OT::COLR* hb_serialize_context_t::start_embed<OT::COLR>(OT::COLR const*) const Unexecuted instantiation: OT::LayerRecord* hb_serialize_context_t::start_embed<OT::LayerRecord>(OT::LayerRecord const*) const Unexecuted instantiation: OT::DeltaSetIndexMap* hb_serialize_context_t::start_embed<OT::DeltaSetIndexMap>(OT::DeltaSetIndexMap const*) const Unexecuted instantiation: char* hb_serialize_context_t::start_embed<char>(char const*) const Unexecuted instantiation: OT::glyf* hb_serialize_context_t::start_embed<OT::glyf>(OT::glyf const*) const Unexecuted instantiation: OT::IndexSubtable* hb_serialize_context_t::start_embed<OT::IndexSubtable>(OT::IndexSubtable const*) const Unexecuted instantiation: OT::IndexSubtableArray* hb_serialize_context_t::start_embed<OT::IndexSubtableArray>(OT::IndexSubtableArray const*) const Unexecuted instantiation: OT::CBLC* hb_serialize_context_t::start_embed<OT::CBLC>(OT::CBLC const*) const Unexecuted instantiation: OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::start_embed<OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> > >(OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> > const*) const Unexecuted instantiation: OT::IntType<unsigned int, 4u>* hb_serialize_context_t::start_embed<OT::IntType<unsigned int, 4u> >(OT::IntType<unsigned int, 4u> const*) const Unexecuted instantiation: OT::UnsizedArrayOf<OT::Index>* hb_serialize_context_t::start_embed<OT::UnsizedArrayOf<OT::Index> >(OT::UnsizedArrayOf<OT::Index> const*) const Unexecuted instantiation: OT::Index* hb_serialize_context_t::start_embed<OT::Index>(OT::Index const*) const Unexecuted instantiation: OT::CPAL* hb_serialize_context_t::start_embed<OT::CPAL>(OT::CPAL const*) const Unexecuted instantiation: OT::SBIXGlyph* hb_serialize_context_t::start_embed<OT::SBIXGlyph>(OT::SBIXGlyph const*) const Unexecuted instantiation: OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> >* hb_serialize_context_t::start_embed<OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> > >(OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> > const*) const Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::start_embed<OT::IntType<unsigned char, 1u> >(OT::IntType<unsigned char, 1u> const*) const Unexecuted instantiation: OT::SBIXStrike* hb_serialize_context_t::start_embed<OT::SBIXStrike>(OT::SBIXStrike const*) const Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::start_embed<OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > >(OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > const*) const Unexecuted instantiation: OT::sbix* hb_serialize_context_t::start_embed<OT::sbix>(OT::sbix const*) const Unexecuted instantiation: unsigned char* hb_serialize_context_t::start_embed<unsigned char>(unsigned char const*) const Unexecuted instantiation: OT::name* hb_serialize_context_t::start_embed<OT::name>(OT::name const*) const Unexecuted instantiation: OT::post* hb_serialize_context_t::start_embed<OT::post>(OT::post const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes> const*) const OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> const*) const Line | Count | Source | 571 | 108k | { return reinterpret_cast<Type *> (this->head); } |
OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> const*) const Line | Count | Source | 571 | 310k | { return reinterpret_cast<Type *> (this->head); } |
Unexecuted instantiation: OT::Layout::GSUB_impl::ReverseChainSingleSubstFormat1* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::ReverseChainSingleSubstFormat1>(OT::Layout::GSUB_impl::ReverseChainSingleSubstFormat1 const*) const Unexecuted instantiation: OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::start_embed<OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > const*) const OT::Layout::GSUB_impl::SubstLookupSubTable* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::SubstLookupSubTable>(OT::Layout::GSUB_impl::SubstLookupSubTable const*) const Line | Count | Source | 571 | 33.1k | { return reinterpret_cast<Type *> (this->head); } |
Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubst* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::SingleSubst>(OT::Layout::GSUB_impl::SingleSubst const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> const*) const Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst>* hb_serialize_context_t::start_embed<OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst> >(OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst> const*) const Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::start_embed<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> > >(OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> > const*) const Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::start_embed<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> > >(OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> > const*) const Unexecuted instantiation: OT::AxisValueOffsetArray* hb_serialize_context_t::start_embed<OT::AxisValueOffsetArray>(OT::AxisValueOffsetArray const*) const Unexecuted instantiation: OT::VORG* hb_serialize_context_t::start_embed<OT::VORG>(OT::VORG const*) const Unexecuted instantiation: OT::MathConstants* hb_serialize_context_t::start_embed<OT::MathConstants>(OT::MathConstants const*) const Unexecuted instantiation: OT::MathItalicsCorrectionInfo* hb_serialize_context_t::start_embed<OT::MathItalicsCorrectionInfo>(OT::MathItalicsCorrectionInfo const*) const Unexecuted instantiation: OT::MathTopAccentAttachment* hb_serialize_context_t::start_embed<OT::MathTopAccentAttachment>(OT::MathTopAccentAttachment const*) const Unexecuted instantiation: OT::MathKern* hb_serialize_context_t::start_embed<OT::MathKern>(OT::MathKern const*) const Unexecuted instantiation: OT::MathKernInfo* hb_serialize_context_t::start_embed<OT::MathKernInfo>(OT::MathKernInfo const*) const Unexecuted instantiation: OT::MathGlyphAssembly* hb_serialize_context_t::start_embed<OT::MathGlyphAssembly>(OT::MathGlyphAssembly const*) const Unexecuted instantiation: OT::MathGlyphConstruction* hb_serialize_context_t::start_embed<OT::MathGlyphConstruction>(OT::MathGlyphConstruction const*) const Unexecuted instantiation: OT::MathVariants* hb_serialize_context_t::start_embed<OT::MathVariants>(OT::MathVariants const*) const OT::Layout::GSUB_impl::SubstLookup* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::SubstLookup>(OT::Layout::GSUB_impl::SubstLookup const*) const Line | Count | Source | 571 | 34.6k | { return reinterpret_cast<Type *> (this->head); } |
|
572 | | template <typename Type> |
573 | | Type *start_embed (const Type &obj) const |
574 | 0 | { return start_embed (std::addressof (obj)); } Unexecuted instantiation: OT::Feature* hb_serialize_context_t::start_embed<OT::Feature>(OT::Feature const&) const Unexecuted instantiation: OT::RecordListOfFeature* hb_serialize_context_t::start_embed<OT::RecordListOfFeature>(OT::RecordListOfFeature const&) const Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::start_embed<OT::LangSys>(OT::LangSys const&) const Unexecuted instantiation: OT::Script* hb_serialize_context_t::start_embed<OT::Script>(OT::Script const&) const Unexecuted instantiation: OT::RecordListOfScript* hb_serialize_context_t::start_embed<OT::RecordListOfScript>(OT::RecordListOfScript const&) const Unexecuted instantiation: OT::FeatureTableSubstitution* hb_serialize_context_t::start_embed<OT::FeatureTableSubstitution>(OT::FeatureTableSubstitution const&) const Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::start_embed<OT::FeatureVariations>(OT::FeatureVariations const&) const Unexecuted instantiation: OT::AttachPoint* hb_serialize_context_t::start_embed<OT::AttachPoint>(OT::AttachPoint const&) const Unexecuted instantiation: OT::AttachList* hb_serialize_context_t::start_embed<OT::AttachList>(OT::AttachList const&) const Unexecuted instantiation: OT::CaretValueFormat3* hb_serialize_context_t::start_embed<OT::CaretValueFormat3>(OT::CaretValueFormat3 const&) const Unexecuted instantiation: OT::LigGlyph* hb_serialize_context_t::start_embed<OT::LigGlyph>(OT::LigGlyph const&) const Unexecuted instantiation: OT::LigCaretList* hb_serialize_context_t::start_embed<OT::LigCaretList>(OT::LigCaretList const&) const Unexecuted instantiation: OT::MarkGlyphSetsFormat1* hb_serialize_context_t::start_embed<OT::MarkGlyphSetsFormat1>(OT::MarkGlyphSetsFormat1 const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorFormat3* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::AnchorFormat3>(OT::Layout::GPOS_impl::AnchorFormat3 const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::CursivePosFormat1* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::CursivePosFormat1>(OT::Layout::GPOS_impl::CursivePosFormat1 const&) const Unexecuted instantiation: OT::Lookup* hb_serialize_context_t::start_embed<OT::Lookup>(OT::Lookup const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat1_4<OT::Layout::SmallTypes> >(OT::ContextFormat1_4<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::RuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::RuleSet<OT::Layout::SmallTypes> >(OT::RuleSet<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat2_5<OT::Layout::SmallTypes> >(OT::ContextFormat2_5<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat1_4<OT::Layout::MediumTypes> >(OT::ContextFormat1_4<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::RuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::RuleSet<OT::Layout::MediumTypes> >(OT::RuleSet<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ContextFormat2_5<OT::Layout::MediumTypes> >(OT::ContextFormat2_5<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat1_4<OT::Layout::SmallTypes> >(OT::ChainContextFormat1_4<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainRuleSet<OT::Layout::SmallTypes> >(OT::ChainRuleSet<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat2_5<OT::Layout::SmallTypes> >(OT::ChainContextFormat2_5<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat1_4<OT::Layout::MediumTypes> >(OT::ChainContextFormat1_4<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainRuleSet<OT::Layout::MediumTypes> >(OT::ChainRuleSet<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::ChainContextFormat2_5<OT::Layout::MediumTypes> >(OT::ChainContextFormat2_5<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::ClipList* hb_serialize_context_t::start_embed<OT::ClipList>(OT::ClipList const&) const Unexecuted instantiation: OT::CPAL* hb_serialize_context_t::start_embed<OT::CPAL>(OT::CPAL const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>* hb_serialize_context_t::start_embed<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> const&) const Unexecuted instantiation: OT::MathItalicsCorrectionInfo* hb_serialize_context_t::start_embed<OT::MathItalicsCorrectionInfo>(OT::MathItalicsCorrectionInfo const&) const Unexecuted instantiation: OT::MathTopAccentAttachment* hb_serialize_context_t::start_embed<OT::MathTopAccentAttachment>(OT::MathTopAccentAttachment const&) const Unexecuted instantiation: OT::MathKernInfo* hb_serialize_context_t::start_embed<OT::MathKernInfo>(OT::MathKernInfo const&) const Unexecuted instantiation: OT::MathGlyphAssembly* hb_serialize_context_t::start_embed<OT::MathGlyphAssembly>(OT::MathGlyphAssembly const&) const Unexecuted instantiation: OT::MathGlyphConstruction* hb_serialize_context_t::start_embed<OT::MathGlyphConstruction>(OT::MathGlyphConstruction const&) const Unexecuted instantiation: OT::MathVariants* hb_serialize_context_t::start_embed<OT::MathVariants>(OT::MathVariants const&) const |
575 | | |
576 | | bool err (hb_serialize_error_t err_type) |
577 | 4.96k | { |
578 | 4.96k | return !bool ((errors = (errors | err_type))); |
579 | 4.96k | } |
580 | | |
581 | | bool start_zerocopy (size_t size) |
582 | 0 | { |
583 | 0 | if (unlikely (in_error ())) return false; |
584 | 0 |
|
585 | 0 | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) |
586 | 0 | { |
587 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); |
588 | 0 | return false; |
589 | 0 | } |
590 | 0 |
|
591 | 0 | assert (!this->zerocopy); |
592 | 0 | this->zerocopy = this->head; |
593 | 0 |
|
594 | 0 | assert (this->current->head == this->head); |
595 | 0 | this->current->head = this->current->tail = this->head = this->tail - size; |
596 | 0 | return true; |
597 | 0 | } |
598 | | |
599 | | template <typename Type> |
600 | | Type *allocate_size (size_t size, bool clear = true) |
601 | 1.57M | { |
602 | 1.57M | if (unlikely (in_error ())) return nullptr; |
603 | | |
604 | 1.57M | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) |
605 | 0 | { |
606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); |
607 | 0 | return nullptr; |
608 | 0 | } |
609 | 1.57M | if (clear) |
610 | 1.22M | hb_memset (this->head, 0, size); |
611 | 1.57M | char *ret = this->head; |
612 | 1.57M | this->head += size; |
613 | 1.57M | return reinterpret_cast<Type *> (ret); |
614 | 1.57M | } Unexecuted instantiation: void* hb_serialize_context_t::allocate_size<void>(unsigned long, bool) OT::Layout::Common::Coverage* hb_serialize_context_t::allocate_size<OT::Layout::Common::Coverage>(unsigned long, bool) Line | Count | Source | 601 | 31.1k | { | 602 | 31.1k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 31.1k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 31.1k | if (clear) | 610 | 31.1k | hb_memset (this->head, 0, size); | 611 | 31.1k | char *ret = this->head; | 612 | 31.1k | this->head += size; | 613 | 31.1k | return reinterpret_cast<Type *> (ret); | 614 | 31.1k | } |
OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Line | Count | Source | 601 | 77.8k | { | 602 | 77.8k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 77.8k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 77.8k | if (clear) | 610 | 38.9k | hb_memset (this->head, 0, size); | 611 | 77.8k | char *ret = this->head; | 612 | 77.8k | this->head += size; | 613 | 77.8k | return reinterpret_cast<Type *> (ret); | 614 | 77.8k | } |
OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes> >(unsigned long, bool) Line | Count | Source | 601 | 3.32k | { | 602 | 3.32k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 3.32k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 3.32k | if (clear) | 610 | 3.32k | hb_memset (this->head, 0, size); | 611 | 3.32k | char *ret = this->head; | 612 | 3.32k | this->head += size; | 613 | 3.32k | return reinterpret_cast<Type *> (ret); | 614 | 3.32k | } |
OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Line | Count | Source | 601 | 6.65k | { | 602 | 6.65k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 6.65k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 6.65k | if (clear) | 610 | 6.65k | hb_memset (this->head, 0, size); | 611 | 6.65k | char *ret = this->head; | 612 | 6.65k | this->head += size; | 613 | 6.65k | return reinterpret_cast<Type *> (ret); | 614 | 6.65k | } |
Unexecuted instantiation: OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::FeatureParamsSize* hb_serialize_context_t::allocate_size<OT::FeatureParamsSize>(unsigned long, bool) Unexecuted instantiation: OT::FeatureParamsStylisticSet* hb_serialize_context_t::allocate_size<OT::FeatureParamsStylisticSet>(unsigned long, bool) Unexecuted instantiation: OT::FeatureParamsCharacterVariants* hb_serialize_context_t::allocate_size<OT::FeatureParamsCharacterVariants>(unsigned long, bool) Unexecuted instantiation: OT::Feature* hb_serialize_context_t::allocate_size<OT::Feature>(unsigned long, bool) Unexecuted instantiation: OT::IndexArray* hb_serialize_context_t::allocate_size<OT::IndexArray>(unsigned long, bool) Unexecuted instantiation: OT::Index* hb_serialize_context_t::allocate_size<OT::Index>(unsigned long, bool) Unexecuted instantiation: OT::RecordListOfFeature* hb_serialize_context_t::allocate_size<OT::RecordListOfFeature>(unsigned long, bool) Unexecuted instantiation: OT::Record<OT::Feature>* hb_serialize_context_t::allocate_size<OT::Record<OT::Feature> >(unsigned long, bool) Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::allocate_size<OT::LangSys>(unsigned long, bool) Unexecuted instantiation: OT::Script* hb_serialize_context_t::allocate_size<OT::Script>(unsigned long, bool) Unexecuted instantiation: OT::Record<OT::LangSys>* hb_serialize_context_t::allocate_size<OT::Record<OT::LangSys> >(unsigned long, bool) Unexecuted instantiation: OT::RecordListOfScript* hb_serialize_context_t::allocate_size<OT::RecordListOfScript>(unsigned long, bool) Unexecuted instantiation: OT::Record<OT::Script>* hb_serialize_context_t::allocate_size<OT::Record<OT::Script> >(unsigned long, bool) OT::Lookup* hb_serialize_context_t::allocate_size<OT::Lookup>(unsigned long, bool) Line | Count | Source | 601 | 33.1k | { | 602 | 33.1k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 33.1k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 33.1k | if (clear) | 610 | 33.1k | hb_memset (this->head, 0, size); | 611 | 33.1k | char *ret = this->head; | 612 | 33.1k | this->head += size; | 613 | 33.1k | return reinterpret_cast<Type *> (ret); | 614 | 33.1k | } |
OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Line | Count | Source | 601 | 66.3k | { | 602 | 66.3k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 66.3k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 66.3k | if (clear) | 610 | 66.3k | hb_memset (this->head, 0, size); | 611 | 66.3k | char *ret = this->head; | 612 | 66.3k | this->head += size; | 613 | 66.3k | return reinterpret_cast<Type *> (ret); | 614 | 66.3k | } |
Unexecuted instantiation: OT::ClassDef* hb_serialize_context_t::allocate_size<OT::ClassDef>(unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ClassDefFormat1_3<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ClassDefFormat2_4<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ClassDefFormat1_3<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> > >(unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ClassDefFormat2_4<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::VarRegionList* hb_serialize_context_t::allocate_size<OT::VarRegionList>(unsigned long, bool) Unexecuted instantiation: OT::VarData* hb_serialize_context_t::allocate_size<OT::VarData>(unsigned long, bool) Unexecuted instantiation: OT::VariationStore* hb_serialize_context_t::allocate_size<OT::VariationStore>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ConditionFormat1* hb_serialize_context_t::allocate_size<OT::ConditionFormat1>(unsigned long, bool) Unexecuted instantiation: OT::ConditionSet* hb_serialize_context_t::allocate_size<OT::ConditionSet>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::FeatureTableSubstitutionRecord* hb_serialize_context_t::allocate_size<OT::FeatureTableSubstitutionRecord>(unsigned long, bool) Unexecuted instantiation: OT::FeatureTableSubstitution* hb_serialize_context_t::allocate_size<OT::FeatureTableSubstitution>(unsigned long, bool) Unexecuted instantiation: OT::FeatureVariationRecord* hb_serialize_context_t::allocate_size<OT::FeatureVariationRecord>(unsigned long, bool) Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::allocate_size<OT::FeatureVariations>(unsigned long, bool) Unexecuted instantiation: OT::HintingDevice* hb_serialize_context_t::allocate_size<OT::HintingDevice>(unsigned long, bool) Unexecuted instantiation: OT::VariationDevice* hb_serialize_context_t::allocate_size<OT::VariationDevice>(unsigned long, bool) Unexecuted instantiation: OT::AttachList* hb_serialize_context_t::allocate_size<OT::AttachList>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::CaretValueFormat1* hb_serialize_context_t::allocate_size<OT::CaretValueFormat1>(unsigned long, bool) Unexecuted instantiation: OT::CaretValueFormat2* hb_serialize_context_t::allocate_size<OT::CaretValueFormat2>(unsigned long, bool) OT::IntType<unsigned short, 2u>* hb_serialize_context_t::allocate_size<OT::IntType<unsigned short, 2u> >(unsigned long, bool) Line | Count | Source | 601 | 33.1k | { | 602 | 33.1k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 33.1k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 33.1k | if (clear) | 610 | 33.1k | hb_memset (this->head, 0, size); | 611 | 33.1k | char *ret = this->head; | 612 | 33.1k | this->head += size; | 613 | 33.1k | return reinterpret_cast<Type *> (ret); | 614 | 33.1k | } |
Unexecuted instantiation: OT::IntType<short, 2u>* hb_serialize_context_t::allocate_size<OT::IntType<short, 2u> >(unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::allocate_size<OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::LigGlyph* hb_serialize_context_t::allocate_size<OT::LigGlyph>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::LigCaretList* hb_serialize_context_t::allocate_size<OT::LigCaretList>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::MarkGlyphSetsFormat1* hb_serialize_context_t::allocate_size<OT::MarkGlyphSetsFormat1>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::GDEFVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::GDEFVersion1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::GDEFVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::GDEFVersion1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::LookupRecord* hb_serialize_context_t::allocate_size<OT::LookupRecord>(unsigned long, bool) Unexecuted instantiation: OT::ContextFormat3* hb_serialize_context_t::allocate_size<OT::ContextFormat3>(unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::allocate_size<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePosFormat1* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::SinglePosFormat1>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePosFormat2* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::SinglePosFormat2>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorFormat1* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::AnchorFormat1>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorFormat2* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::AnchorFormat2>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::EntryExitRecord* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::EntryExitRecord>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::CursivePosFormat1* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::CursivePosFormat1>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkRecord* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkRecord>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkArray* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkArray>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorMatrix* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::AnchorMatrix>(unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::allocate_size<OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::LigatureArray* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::LigatureArray>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ContextFormat1_4<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::RuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::RuleSet<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Rule<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Rule<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ContextFormat2_5<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ContextFormat1_4<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::RuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::RuleSet<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Rule<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Rule<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ContextFormat2_5<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ChainContextFormat1_4<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ChainRuleSet<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::ChainContextFormat2_5<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ChainContextFormat1_4<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ChainRuleSet<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::ChainContextFormat2_5<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos>* hb_serialize_context_t::allocate_size<OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos> >(unsigned long, bool) Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true>* hb_serialize_context_t::allocate_size<OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::allocate_size<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> > >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::OS2* hb_serialize_context_t::allocate_size<OT::OS2>(unsigned long, bool) Unexecuted instantiation: OT::IntType<unsigned int, 4u>* hb_serialize_context_t::allocate_size<OT::IntType<unsigned int, 4u> >(unsigned long, bool) Unexecuted instantiation: OT::UnicodeValueRange* hb_serialize_context_t::allocate_size<OT::UnicodeValueRange>(unsigned long, bool) Unexecuted instantiation: OT::UVSMapping* hb_serialize_context_t::allocate_size<OT::UVSMapping>(unsigned long, bool) Unexecuted instantiation: OT::VariationSelectorRecord* hb_serialize_context_t::allocate_size<OT::VariationSelectorRecord>(unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableFormat14* hb_serialize_context_t::allocate_size<OT::CmapSubtableFormat14>(unsigned long, bool) Unexecuted instantiation: OT::cmap* hb_serialize_context_t::allocate_size<OT::cmap>(unsigned long, bool) Unexecuted instantiation: OT::EncodingRecord* hb_serialize_context_t::allocate_size<OT::EncodingRecord>(unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableFormat4* hb_serialize_context_t::allocate_size<OT::CmapSubtableFormat4>(unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableFormat12* hb_serialize_context_t::allocate_size<OT::CmapSubtableFormat12>(unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableLongGroup* hb_serialize_context_t::allocate_size<OT::CmapSubtableLongGroup>(unsigned long, bool) Unexecuted instantiation: OT::ColorStop* hb_serialize_context_t::allocate_size<OT::ColorStop>(unsigned long, bool) Unexecuted instantiation: OT::PaintColrLayers* hb_serialize_context_t::allocate_size<OT::PaintColrLayers>(unsigned long, bool) Unexecuted instantiation: OT::PaintSolid* hb_serialize_context_t::allocate_size<OT::PaintSolid>(unsigned long, bool) Unexecuted instantiation: OT::PaintGlyph* hb_serialize_context_t::allocate_size<OT::PaintGlyph>(unsigned long, bool) Unexecuted instantiation: OT::VarIdx* hb_serialize_context_t::allocate_size<OT::VarIdx>(unsigned long, bool) Unexecuted instantiation: OT::PaintLinearGradient<OT::NoVariable>* hb_serialize_context_t::allocate_size<OT::PaintLinearGradient<OT::NoVariable> >(unsigned long, bool) Unexecuted instantiation: OT::ColorLine<OT::NoVariable>* hb_serialize_context_t::allocate_size<OT::ColorLine<OT::NoVariable> >(unsigned long, bool) Unexecuted instantiation: OT::PaintLinearGradient<OT::Variable>* hb_serialize_context_t::allocate_size<OT::PaintLinearGradient<OT::Variable> >(unsigned long, bool) Unexecuted instantiation: OT::ColorLine<OT::Variable>* hb_serialize_context_t::allocate_size<OT::ColorLine<OT::Variable> >(unsigned long, bool) Unexecuted instantiation: OT::PaintRadialGradient<OT::NoVariable>* hb_serialize_context_t::allocate_size<OT::PaintRadialGradient<OT::NoVariable> >(unsigned long, bool) Unexecuted instantiation: OT::PaintRadialGradient<OT::Variable>* hb_serialize_context_t::allocate_size<OT::PaintRadialGradient<OT::Variable> >(unsigned long, bool) Unexecuted instantiation: OT::PaintSweepGradient<OT::NoVariable>* hb_serialize_context_t::allocate_size<OT::PaintSweepGradient<OT::NoVariable> >(unsigned long, bool) Unexecuted instantiation: OT::PaintSweepGradient<OT::Variable>* hb_serialize_context_t::allocate_size<OT::PaintSweepGradient<OT::Variable> >(unsigned long, bool) Unexecuted instantiation: OT::PaintTransform<OT::NoVariable>* hb_serialize_context_t::allocate_size<OT::PaintTransform<OT::NoVariable> >(unsigned long, bool) Unexecuted instantiation: OT::NoVariable<OT::Affine2x3>* hb_serialize_context_t::allocate_size<OT::NoVariable<OT::Affine2x3> >(unsigned long, bool) Unexecuted instantiation: OT::PaintTransform<OT::Variable>* hb_serialize_context_t::allocate_size<OT::PaintTransform<OT::Variable> >(unsigned long, bool) Unexecuted instantiation: OT::Variable<OT::Affine2x3>* hb_serialize_context_t::allocate_size<OT::Variable<OT::Affine2x3> >(unsigned long, bool) Unexecuted instantiation: OT::PaintColrGlyph* hb_serialize_context_t::allocate_size<OT::PaintColrGlyph>(unsigned long, bool) Unexecuted instantiation: OT::PaintTranslate* hb_serialize_context_t::allocate_size<OT::PaintTranslate>(unsigned long, bool) Unexecuted instantiation: OT::PaintScale* hb_serialize_context_t::allocate_size<OT::PaintScale>(unsigned long, bool) Unexecuted instantiation: OT::PaintScaleAroundCenter* hb_serialize_context_t::allocate_size<OT::PaintScaleAroundCenter>(unsigned long, bool) Unexecuted instantiation: OT::PaintScaleUniform* hb_serialize_context_t::allocate_size<OT::PaintScaleUniform>(unsigned long, bool) Unexecuted instantiation: OT::PaintScaleUniformAroundCenter* hb_serialize_context_t::allocate_size<OT::PaintScaleUniformAroundCenter>(unsigned long, bool) Unexecuted instantiation: OT::PaintRotate* hb_serialize_context_t::allocate_size<OT::PaintRotate>(unsigned long, bool) Unexecuted instantiation: OT::PaintRotateAroundCenter* hb_serialize_context_t::allocate_size<OT::PaintRotateAroundCenter>(unsigned long, bool) Unexecuted instantiation: OT::PaintSkew* hb_serialize_context_t::allocate_size<OT::PaintSkew>(unsigned long, bool) Unexecuted instantiation: OT::PaintSkewAroundCenter* hb_serialize_context_t::allocate_size<OT::PaintSkewAroundCenter>(unsigned long, bool) Unexecuted instantiation: OT::PaintComposite* hb_serialize_context_t::allocate_size<OT::PaintComposite>(unsigned long, bool) Unexecuted instantiation: OT::ClipBoxFormat1* hb_serialize_context_t::allocate_size<OT::ClipBoxFormat1>(unsigned long, bool) Unexecuted instantiation: OT::ClipBoxFormat2* hb_serialize_context_t::allocate_size<OT::ClipBoxFormat2>(unsigned long, bool) Unexecuted instantiation: OT::ClipRecord* hb_serialize_context_t::allocate_size<OT::ClipRecord>(unsigned long, bool) Unexecuted instantiation: OT::ClipList* hb_serialize_context_t::allocate_size<OT::ClipList>(unsigned long, bool) Unexecuted instantiation: OT::BaseGlyphPaintRecord* hb_serialize_context_t::allocate_size<OT::BaseGlyphPaintRecord>(unsigned long, bool) Unexecuted instantiation: OT::BaseGlyphList* hb_serialize_context_t::allocate_size<OT::BaseGlyphList>(unsigned long, bool) Unexecuted instantiation: OT::LayerList* hb_serialize_context_t::allocate_size<OT::LayerList>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > >(unsigned long, bool) Unexecuted instantiation: OT::COLR* hb_serialize_context_t::allocate_size<OT::COLR>(unsigned long, bool) Unexecuted instantiation: OT::BaseGlyphRecord* hb_serialize_context_t::allocate_size<OT::BaseGlyphRecord>(unsigned long, bool) Unexecuted instantiation: OT::LayerRecord* hb_serialize_context_t::allocate_size<OT::LayerRecord>(unsigned long, bool) Unexecuted instantiation: OT::head* hb_serialize_context_t::allocate_size<OT::head>(unsigned long, bool) Unexecuted instantiation: OT::maxp* hb_serialize_context_t::allocate_size<OT::maxp>(unsigned long, bool) Unexecuted instantiation: OT::maxpV1Tail* hb_serialize_context_t::allocate_size<OT::maxpV1Tail>(unsigned long, bool) Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::allocate_size<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> > >(unsigned long, bool) Unexecuted instantiation: OT::HVAR* hb_serialize_context_t::allocate_size<OT::HVAR>(unsigned long, bool) Unexecuted instantiation: OT::VVAR* hb_serialize_context_t::allocate_size<OT::VVAR>(unsigned long, bool) Unexecuted instantiation: OT::gvar* hb_serialize_context_t::allocate_size<OT::gvar>(unsigned long, bool) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::allocate_size<OT::IntType<unsigned char, 1u> >(unsigned long, bool) Unexecuted instantiation: OT::HBFixed<OT::IntType<short, 2u>, 14u>* hb_serialize_context_t::allocate_size<OT::HBFixed<OT::IntType<short, 2u>, 14u> >(unsigned long, bool) Unexecuted instantiation: char* hb_serialize_context_t::allocate_size<char>(unsigned long, bool) Unexecuted instantiation: OT::HBFixed<OT::IntType<int, 4u>, 16u>* hb_serialize_context_t::allocate_size<OT::HBFixed<OT::IntType<int, 4u>, 16u> >(unsigned long, bool) Unexecuted instantiation: OT::fvar* hb_serialize_context_t::allocate_size<OT::fvar>(unsigned long, bool) Unexecuted instantiation: OT::AxisRecord* hb_serialize_context_t::allocate_size<OT::AxisRecord>(unsigned long, bool) Unexecuted instantiation: OT::Offset<OT::IntType<unsigned int, 4u>, true>* hb_serialize_context_t::allocate_size<OT::Offset<OT::IntType<unsigned int, 4u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::Offset<OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::allocate_size<OT::Offset<OT::IntType<unsigned short, 2u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::IndexSubtable* hb_serialize_context_t::allocate_size<OT::IndexSubtable>(unsigned long, bool) Unexecuted instantiation: OT::IndexSubtableRecord* hb_serialize_context_t::allocate_size<OT::IndexSubtableRecord>(unsigned long, bool) Unexecuted instantiation: OT::BitmapSizeTable* hb_serialize_context_t::allocate_size<OT::BitmapSizeTable>(unsigned long, bool) Unexecuted instantiation: OT::CBLC* hb_serialize_context_t::allocate_size<OT::CBLC>(unsigned long, bool) Unexecuted instantiation: OT::CPALV1Tail* hb_serialize_context_t::allocate_size<OT::CPALV1Tail>(unsigned long, bool) Unexecuted instantiation: OT::CPAL* hb_serialize_context_t::allocate_size<OT::CPAL>(unsigned long, bool) Unexecuted instantiation: OT::SBIXGlyph* hb_serialize_context_t::allocate_size<OT::SBIXGlyph>(unsigned long, bool) Unexecuted instantiation: OT::SBIXStrike* hb_serialize_context_t::allocate_size<OT::SBIXStrike>(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > >(unsigned long, bool) Unexecuted instantiation: unsigned char* hb_serialize_context_t::allocate_size<unsigned char>(unsigned long, bool) Unexecuted instantiation: OT::IntType<int, 4u>* hb_serialize_context_t::allocate_size<OT::IntType<int, 4u> >(unsigned long, bool) Unexecuted instantiation: CFF::FDSelect* hb_serialize_context_t::allocate_size<CFF::FDSelect>(unsigned long, bool) Unexecuted instantiation: CFF::Encoding* hb_serialize_context_t::allocate_size<CFF::Encoding>(unsigned long, bool) Unexecuted instantiation: CFF::Encoding0* hb_serialize_context_t::allocate_size<CFF::Encoding0>(unsigned long, bool) Unexecuted instantiation: CFF::Encoding1* hb_serialize_context_t::allocate_size<CFF::Encoding1>(unsigned long, bool) Unexecuted instantiation: CFF::CFF1SuppEncData* hb_serialize_context_t::allocate_size<CFF::CFF1SuppEncData>(unsigned long, bool) Unexecuted instantiation: CFF::Charset* hb_serialize_context_t::allocate_size<CFF::Charset>(unsigned long, bool) Unexecuted instantiation: CFF::Charset0* hb_serialize_context_t::allocate_size<CFF::Charset0>(unsigned long, bool) Unexecuted instantiation: CFF::Charset1_2<OT::IntType<unsigned char, 1u> >* hb_serialize_context_t::allocate_size<CFF::Charset1_2<OT::IntType<unsigned char, 1u> > >(unsigned long, bool) Unexecuted instantiation: CFF::Charset1_2<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<CFF::Charset1_2<OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: CFF::CFFIndex<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<CFF::CFFIndex<OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: CFF::CFF2FDSelect* hb_serialize_context_t::allocate_size<CFF::CFF2FDSelect>(unsigned long, bool) Unexecuted instantiation: CFF::CFF2VariationStore* hb_serialize_context_t::allocate_size<CFF::CFF2VariationStore>(unsigned long, bool) Unexecuted instantiation: OT::NameRecord* hb_serialize_context_t::allocate_size<OT::NameRecord>(unsigned long, bool) Unexecuted instantiation: OT::name* hb_serialize_context_t::allocate_size<OT::name>(unsigned long, bool) Unexecuted instantiation: OT::post* hb_serialize_context_t::allocate_size<OT::post>(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Line | Count | Source | 601 | 17.7k | { | 602 | 17.7k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 17.7k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 17.7k | if (clear) | 610 | 17.7k | hb_memset (this->head, 0, size); | 611 | 17.7k | char *ret = this->head; | 612 | 17.7k | this->head += size; | 613 | 17.7k | return reinterpret_cast<Type *> (ret); | 614 | 17.7k | } |
OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Line | Count | Source | 601 | 35.5k | { | 602 | 35.5k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 35.5k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 35.5k | if (clear) | 610 | 35.5k | hb_memset (this->head, 0, size); | 611 | 35.5k | char *ret = this->head; | 612 | 35.5k | this->head += size; | 613 | 35.5k | return reinterpret_cast<Type *> (ret); | 614 | 35.5k | } |
OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> >(unsigned long, bool) Line | Count | Source | 601 | 108k | { | 602 | 108k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 108k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 108k | if (clear) | 610 | 108k | hb_memset (this->head, 0, size); | 611 | 108k | char *ret = this->head; | 612 | 108k | this->head += size; | 613 | 108k | return reinterpret_cast<Type *> (ret); | 614 | 108k | } |
OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Line | Count | Source | 601 | 216k | { | 602 | 216k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 216k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 216k | if (clear) | 610 | 216k | hb_memset (this->head, 0, size); | 611 | 216k | char *ret = this->head; | 612 | 216k | this->head += size; | 613 | 216k | return reinterpret_cast<Type *> (ret); | 614 | 216k | } |
OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> >(unsigned long, bool) Line | Count | Source | 601 | 309k | { | 602 | 309k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 309k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 309k | if (clear) | 610 | 309k | hb_memset (this->head, 0, size); | 611 | 309k | char *ret = this->head; | 612 | 309k | this->head += size; | 613 | 309k | return reinterpret_cast<Type *> (ret); | 614 | 309k | } |
OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Line | Count | Source | 601 | 619k | { | 602 | 619k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 619k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 619k | if (clear) | 610 | 309k | hb_memset (this->head, 0, size); | 611 | 619k | char *ret = this->head; | 612 | 619k | this->head += size; | 613 | 619k | return reinterpret_cast<Type *> (ret); | 614 | 619k | } |
Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes> >(unsigned long, bool) Line | Count | Source | 601 | 4.33k | { | 602 | 4.33k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 4.33k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 4.33k | if (clear) | 610 | 4.33k | hb_memset (this->head, 0, size); | 611 | 4.33k | char *ret = this->head; | 612 | 4.33k | this->head += size; | 613 | 4.33k | return reinterpret_cast<Type *> (ret); | 614 | 4.33k | } |
OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes> >(unsigned long, bool) Line | Count | Source | 601 | 11.0k | { | 602 | 11.0k | if (unlikely (in_error ())) return nullptr; | 603 | | | 604 | 11.0k | if (unlikely (size > INT_MAX || this->tail - this->head < ptrdiff_t (size))) | 605 | 0 | { | 606 | 0 | err (HB_SERIALIZE_ERROR_OUT_OF_ROOM); | 607 | 0 | return nullptr; | 608 | 0 | } | 609 | 11.0k | if (clear) | 610 | 11.0k | hb_memset (this->head, 0, size); | 611 | 11.0k | char *ret = this->head; | 612 | 11.0k | this->head += size; | 613 | 11.0k | return reinterpret_cast<Type *> (ret); | 614 | 11.0k | } |
Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>* hb_serialize_context_t::allocate_size<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> >(unsigned long, bool) Unexecuted instantiation: OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst>* hb_serialize_context_t::allocate_size<OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst> >(unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::allocate_size<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> > >(unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::allocate_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(unsigned long, bool) Unexecuted instantiation: OT::AxisValueFormat1* hb_serialize_context_t::allocate_size<OT::AxisValueFormat1>(unsigned long, bool) Unexecuted instantiation: OT::AxisValueFormat2* hb_serialize_context_t::allocate_size<OT::AxisValueFormat2>(unsigned long, bool) Unexecuted instantiation: OT::AxisValueFormat3* hb_serialize_context_t::allocate_size<OT::AxisValueFormat3>(unsigned long, bool) Unexecuted instantiation: OT::AxisValueFormat4* hb_serialize_context_t::allocate_size<OT::AxisValueFormat4>(unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::allocate_size<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::STAT* hb_serialize_context_t::allocate_size<OT::STAT>(unsigned long, bool) Unexecuted instantiation: OT::StatAxisRecord* hb_serialize_context_t::allocate_size<OT::StatAxisRecord>(unsigned long, bool) Unexecuted instantiation: OT::VORG* hb_serialize_context_t::allocate_size<OT::VORG>(unsigned long, bool) Unexecuted instantiation: OT::VertOriginMetric* hb_serialize_context_t::allocate_size<OT::VertOriginMetric>(unsigned long, bool) Unexecuted instantiation: OT::MathValueRecord* hb_serialize_context_t::allocate_size<OT::MathValueRecord>(unsigned long, bool) Unexecuted instantiation: OT::MathItalicsCorrectionInfo* hb_serialize_context_t::allocate_size<OT::MathItalicsCorrectionInfo>(unsigned long, bool) Unexecuted instantiation: OT::MathTopAccentAttachment* hb_serialize_context_t::allocate_size<OT::MathTopAccentAttachment>(unsigned long, bool) Unexecuted instantiation: OT::MathKernInfoRecord* hb_serialize_context_t::allocate_size<OT::MathKernInfoRecord>(unsigned long, bool) Unexecuted instantiation: OT::MathKernInfo* hb_serialize_context_t::allocate_size<OT::MathKernInfo>(unsigned long, bool) Unexecuted instantiation: OT::MathGlyphInfo* hb_serialize_context_t::allocate_size<OT::MathGlyphInfo>(unsigned long, bool) Unexecuted instantiation: OT::MathGlyphVariantRecord* hb_serialize_context_t::allocate_size<OT::MathGlyphVariantRecord>(unsigned long, bool) Unexecuted instantiation: OT::MathGlyphPartRecord* hb_serialize_context_t::allocate_size<OT::MathGlyphPartRecord>(unsigned long, bool) Unexecuted instantiation: OT::MathGlyphConstruction* hb_serialize_context_t::allocate_size<OT::MathGlyphConstruction>(unsigned long, bool) Unexecuted instantiation: OT::MathVariants* hb_serialize_context_t::allocate_size<OT::MathVariants>(unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::allocate_size<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true> >(unsigned long, bool) Unexecuted instantiation: OT::MATH* hb_serialize_context_t::allocate_size<OT::MATH>(unsigned long, bool) |
615 | | |
616 | | template <typename Type> |
617 | | Type *allocate_min () |
618 | 0 | { return this->allocate_size<Type> (Type::min_size); } Unexecuted instantiation: OT::HVAR* hb_serialize_context_t::allocate_min<OT::HVAR>() Unexecuted instantiation: OT::VVAR* hb_serialize_context_t::allocate_min<OT::VVAR>() Unexecuted instantiation: OT::gvar* hb_serialize_context_t::allocate_min<OT::gvar>() Unexecuted instantiation: OT::post* hb_serialize_context_t::allocate_min<OT::post>() |
619 | | |
620 | | template <typename Type> |
621 | | Type *embed (const Type *obj) |
622 | 0 | { |
623 | 0 | unsigned int size = obj->get_size (); |
624 | 0 | Type *ret = this->allocate_size<Type> (size, false); |
625 | 0 | if (unlikely (!ret)) return nullptr; |
626 | 0 | hb_memcpy (ret, obj, size); |
627 | 0 | return ret; |
628 | 0 | } Unexecuted instantiation: OT::FeatureParamsSize* hb_serialize_context_t::embed<OT::FeatureParamsSize>(OT::FeatureParamsSize const*) Unexecuted instantiation: OT::FeatureParamsStylisticSet* hb_serialize_context_t::embed<OT::FeatureParamsStylisticSet>(OT::FeatureParamsStylisticSet const*) Unexecuted instantiation: OT::FeatureParamsCharacterVariants* hb_serialize_context_t::embed<OT::FeatureParamsCharacterVariants>(OT::FeatureParamsCharacterVariants const*) Unexecuted instantiation: OT::Record<OT::Feature>* hb_serialize_context_t::embed<OT::Record<OT::Feature> >(OT::Record<OT::Feature> const*) Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::embed<OT::LangSys>(OT::LangSys const*) Unexecuted instantiation: OT::Record<OT::LangSys>* hb_serialize_context_t::embed<OT::Record<OT::LangSys> >(OT::Record<OT::LangSys> const*) Unexecuted instantiation: OT::Record<OT::Script>* hb_serialize_context_t::embed<OT::Record<OT::Script> >(OT::Record<OT::Script> const*) Unexecuted instantiation: OT::ConditionFormat1* hb_serialize_context_t::embed<OT::ConditionFormat1>(OT::ConditionFormat1 const*) Unexecuted instantiation: OT::FeatureTableSubstitutionRecord* hb_serialize_context_t::embed<OT::FeatureTableSubstitutionRecord>(OT::FeatureTableSubstitutionRecord const*) Unexecuted instantiation: OT::FeatureVariationRecord* hb_serialize_context_t::embed<OT::FeatureVariationRecord>(OT::FeatureVariationRecord const*) Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::embed<OT::FeatureVariations>(OT::FeatureVariations const*) Unexecuted instantiation: OT::HintingDevice* hb_serialize_context_t::embed<OT::HintingDevice>(OT::HintingDevice const*) Unexecuted instantiation: OT::VariationDevice* hb_serialize_context_t::embed<OT::VariationDevice>(OT::VariationDevice const*) Unexecuted instantiation: OT::CaretValueFormat1* hb_serialize_context_t::embed<OT::CaretValueFormat1>(OT::CaretValueFormat1 const*) Unexecuted instantiation: OT::CaretValueFormat2* hb_serialize_context_t::embed<OT::CaretValueFormat2>(OT::CaretValueFormat2 const*) Unexecuted instantiation: OT::IntType<unsigned short, 2u>* hb_serialize_context_t::embed<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u> const*) Unexecuted instantiation: OT::IntType<short, 2u>* hb_serialize_context_t::embed<OT::IntType<short, 2u> >(OT::IntType<short, 2u> const*) Unexecuted instantiation: OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true> const*) Unexecuted instantiation: OT::GDEFVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::embed<OT::GDEFVersion1_2<OT::Layout::SmallTypes> >(OT::GDEFVersion1_2<OT::Layout::SmallTypes> const*) Unexecuted instantiation: OT::GDEFVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::embed<OT::GDEFVersion1_2<OT::Layout::MediumTypes> >(OT::GDEFVersion1_2<OT::Layout::MediumTypes> const*) Unexecuted instantiation: OT::LookupRecord* hb_serialize_context_t::embed<OT::LookupRecord>(OT::LookupRecord const*) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorFormat1* hb_serialize_context_t::embed<OT::Layout::GPOS_impl::AnchorFormat1>(OT::Layout::GPOS_impl::AnchorFormat1 const*) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorFormat2* hb_serialize_context_t::embed<OT::Layout::GPOS_impl::AnchorFormat2>(OT::Layout::GPOS_impl::AnchorFormat2 const*) Unexecuted instantiation: OT::Layout::GPOS_impl::EntryExitRecord* hb_serialize_context_t::embed<OT::Layout::GPOS_impl::EntryExitRecord>(OT::Layout::GPOS_impl::EntryExitRecord const*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkRecord* hb_serialize_context_t::embed<OT::Layout::GPOS_impl::MarkRecord>(OT::Layout::GPOS_impl::MarkRecord const*) Unexecuted instantiation: OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true> const*) Unexecuted instantiation: OT::OS2* hb_serialize_context_t::embed<OT::OS2>(OT::OS2 const*) Unexecuted instantiation: OT::VariationSelectorRecord* hb_serialize_context_t::embed<OT::VariationSelectorRecord>(OT::VariationSelectorRecord const*) Unexecuted instantiation: OT::EncodingRecord* hb_serialize_context_t::embed<OT::EncodingRecord>(OT::EncodingRecord const*) Unexecuted instantiation: OT::ColorStop* hb_serialize_context_t::embed<OT::ColorStop>(OT::ColorStop const*) Unexecuted instantiation: OT::PaintColrLayers* hb_serialize_context_t::embed<OT::PaintColrLayers>(OT::PaintColrLayers const*) Unexecuted instantiation: OT::PaintSolid* hb_serialize_context_t::embed<OT::PaintSolid>(OT::PaintSolid const*) Unexecuted instantiation: OT::PaintGlyph* hb_serialize_context_t::embed<OT::PaintGlyph>(OT::PaintGlyph const*) Unexecuted instantiation: OT::VarIdx* hb_serialize_context_t::embed<OT::VarIdx>(OT::VarIdx const*) Unexecuted instantiation: OT::PaintLinearGradient<OT::NoVariable>* hb_serialize_context_t::embed<OT::PaintLinearGradient<OT::NoVariable> >(OT::PaintLinearGradient<OT::NoVariable> const*) Unexecuted instantiation: OT::PaintLinearGradient<OT::Variable>* hb_serialize_context_t::embed<OT::PaintLinearGradient<OT::Variable> >(OT::PaintLinearGradient<OT::Variable> const*) Unexecuted instantiation: OT::PaintRadialGradient<OT::NoVariable>* hb_serialize_context_t::embed<OT::PaintRadialGradient<OT::NoVariable> >(OT::PaintRadialGradient<OT::NoVariable> const*) Unexecuted instantiation: OT::PaintRadialGradient<OT::Variable>* hb_serialize_context_t::embed<OT::PaintRadialGradient<OT::Variable> >(OT::PaintRadialGradient<OT::Variable> const*) Unexecuted instantiation: OT::PaintSweepGradient<OT::NoVariable>* hb_serialize_context_t::embed<OT::PaintSweepGradient<OT::NoVariable> >(OT::PaintSweepGradient<OT::NoVariable> const*) Unexecuted instantiation: OT::PaintSweepGradient<OT::Variable>* hb_serialize_context_t::embed<OT::PaintSweepGradient<OT::Variable> >(OT::PaintSweepGradient<OT::Variable> const*) Unexecuted instantiation: OT::PaintTransform<OT::NoVariable>* hb_serialize_context_t::embed<OT::PaintTransform<OT::NoVariable> >(OT::PaintTransform<OT::NoVariable> const*) Unexecuted instantiation: OT::NoVariable<OT::Affine2x3>* hb_serialize_context_t::embed<OT::NoVariable<OT::Affine2x3> >(OT::NoVariable<OT::Affine2x3> const*) Unexecuted instantiation: OT::PaintTransform<OT::Variable>* hb_serialize_context_t::embed<OT::PaintTransform<OT::Variable> >(OT::PaintTransform<OT::Variable> const*) Unexecuted instantiation: OT::Variable<OT::Affine2x3>* hb_serialize_context_t::embed<OT::Variable<OT::Affine2x3> >(OT::Variable<OT::Affine2x3> const*) Unexecuted instantiation: OT::PaintColrGlyph* hb_serialize_context_t::embed<OT::PaintColrGlyph>(OT::PaintColrGlyph const*) Unexecuted instantiation: OT::PaintTranslate* hb_serialize_context_t::embed<OT::PaintTranslate>(OT::PaintTranslate const*) Unexecuted instantiation: OT::PaintScale* hb_serialize_context_t::embed<OT::PaintScale>(OT::PaintScale const*) Unexecuted instantiation: OT::PaintScaleAroundCenter* hb_serialize_context_t::embed<OT::PaintScaleAroundCenter>(OT::PaintScaleAroundCenter const*) Unexecuted instantiation: OT::PaintScaleUniform* hb_serialize_context_t::embed<OT::PaintScaleUniform>(OT::PaintScaleUniform const*) Unexecuted instantiation: OT::PaintScaleUniformAroundCenter* hb_serialize_context_t::embed<OT::PaintScaleUniformAroundCenter>(OT::PaintScaleUniformAroundCenter const*) Unexecuted instantiation: OT::PaintRotate* hb_serialize_context_t::embed<OT::PaintRotate>(OT::PaintRotate const*) Unexecuted instantiation: OT::PaintRotateAroundCenter* hb_serialize_context_t::embed<OT::PaintRotateAroundCenter>(OT::PaintRotateAroundCenter const*) Unexecuted instantiation: OT::PaintSkew* hb_serialize_context_t::embed<OT::PaintSkew>(OT::PaintSkew const*) Unexecuted instantiation: OT::PaintSkewAroundCenter* hb_serialize_context_t::embed<OT::PaintSkewAroundCenter>(OT::PaintSkewAroundCenter const*) Unexecuted instantiation: OT::PaintComposite* hb_serialize_context_t::embed<OT::PaintComposite>(OT::PaintComposite const*) Unexecuted instantiation: OT::ClipBoxFormat1* hb_serialize_context_t::embed<OT::ClipBoxFormat1>(OT::ClipBoxFormat1 const*) Unexecuted instantiation: OT::ClipBoxFormat2* hb_serialize_context_t::embed<OT::ClipBoxFormat2>(OT::ClipBoxFormat2 const*) Unexecuted instantiation: OT::ClipRecord* hb_serialize_context_t::embed<OT::ClipRecord>(OT::ClipRecord const*) Unexecuted instantiation: OT::BaseGlyphPaintRecord* hb_serialize_context_t::embed<OT::BaseGlyphPaintRecord>(OT::BaseGlyphPaintRecord const*) Unexecuted instantiation: OT::BaseGlyphRecord* hb_serialize_context_t::embed<OT::BaseGlyphRecord>(OT::BaseGlyphRecord const*) Unexecuted instantiation: OT::head* hb_serialize_context_t::embed<OT::head>(OT::head const*) Unexecuted instantiation: OT::maxp* hb_serialize_context_t::embed<OT::maxp>(OT::maxp const*) Unexecuted instantiation: OT::maxpV1Tail* hb_serialize_context_t::embed<OT::maxpV1Tail>(OT::maxpV1Tail const*) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::embed<OT::IntType<unsigned char, 1u> >(OT::IntType<unsigned char, 1u> const*) Unexecuted instantiation: OT::Index* hb_serialize_context_t::embed<OT::Index>(OT::Index const*) Unexecuted instantiation: OT::HBFixed<OT::IntType<int, 4u>, 16u>* hb_serialize_context_t::embed<OT::HBFixed<OT::IntType<int, 4u>, 16u> >(OT::HBFixed<OT::IntType<int, 4u>, 16u> const*) Unexecuted instantiation: OT::fvar* hb_serialize_context_t::embed<OT::fvar>(OT::fvar const*) Unexecuted instantiation: OT::AxisRecord* hb_serialize_context_t::embed<OT::AxisRecord>(OT::AxisRecord const*) Unexecuted instantiation: OT::Offset<OT::IntType<unsigned int, 4u>, true>* hb_serialize_context_t::embed<OT::Offset<OT::IntType<unsigned int, 4u>, true> >(OT::Offset<OT::IntType<unsigned int, 4u>, true> const*) Unexecuted instantiation: OT::Offset<OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::Offset<OT::IntType<unsigned short, 2u>, true> >(OT::Offset<OT::IntType<unsigned short, 2u>, true> const*) Unexecuted instantiation: OT::IndexSubtableRecord* hb_serialize_context_t::embed<OT::IndexSubtableRecord>(OT::IndexSubtableRecord const*) Unexecuted instantiation: OT::BitmapSizeTable* hb_serialize_context_t::embed<OT::BitmapSizeTable>(OT::BitmapSizeTable const*) Unexecuted instantiation: OT::NameRecord* hb_serialize_context_t::embed<OT::NameRecord>(OT::NameRecord const*) Unexecuted instantiation: OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true> const*) Unexecuted instantiation: OT::AxisValueFormat1* hb_serialize_context_t::embed<OT::AxisValueFormat1>(OT::AxisValueFormat1 const*) Unexecuted instantiation: OT::AxisValueFormat2* hb_serialize_context_t::embed<OT::AxisValueFormat2>(OT::AxisValueFormat2 const*) Unexecuted instantiation: OT::AxisValueFormat3* hb_serialize_context_t::embed<OT::AxisValueFormat3>(OT::AxisValueFormat3 const*) Unexecuted instantiation: OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true> const*) Unexecuted instantiation: OT::STAT* hb_serialize_context_t::embed<OT::STAT>(OT::STAT const*) Unexecuted instantiation: OT::StatAxisRecord* hb_serialize_context_t::embed<OT::StatAxisRecord>(OT::StatAxisRecord const*) Unexecuted instantiation: OT::MathValueRecord* hb_serialize_context_t::embed<OT::MathValueRecord>(OT::MathValueRecord const*) Unexecuted instantiation: OT::MathKernInfoRecord* hb_serialize_context_t::embed<OT::MathKernInfoRecord>(OT::MathKernInfoRecord const*) Unexecuted instantiation: OT::MathGlyphInfo* hb_serialize_context_t::embed<OT::MathGlyphInfo>(OT::MathGlyphInfo const*) Unexecuted instantiation: OT::MathGlyphVariantRecord* hb_serialize_context_t::embed<OT::MathGlyphVariantRecord>(OT::MathGlyphVariantRecord const*) Unexecuted instantiation: OT::MathGlyphPartRecord* hb_serialize_context_t::embed<OT::MathGlyphPartRecord>(OT::MathGlyphPartRecord const*) Unexecuted instantiation: OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true> const*) Unexecuted instantiation: OT::MATH* hb_serialize_context_t::embed<OT::MATH>(OT::MATH const*) |
629 | | template <typename Type> |
630 | | Type *embed (const Type &obj) |
631 | 0 | { return embed (std::addressof (obj)); } Unexecuted instantiation: OT::FeatureParamsSize* hb_serialize_context_t::embed<OT::FeatureParamsSize>(OT::FeatureParamsSize const&) Unexecuted instantiation: OT::FeatureParamsStylisticSet* hb_serialize_context_t::embed<OT::FeatureParamsStylisticSet>(OT::FeatureParamsStylisticSet const&) Unexecuted instantiation: OT::FeatureParamsCharacterVariants* hb_serialize_context_t::embed<OT::FeatureParamsCharacterVariants>(OT::FeatureParamsCharacterVariants const&) Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::embed<OT::LangSys>(OT::LangSys const&) Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::embed<OT::FeatureVariations>(OT::FeatureVariations const&) Unexecuted instantiation: OT::IntType<unsigned short, 2u>* hb_serialize_context_t::embed<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u> const&) Unexecuted instantiation: OT::IntType<short, 2u>* hb_serialize_context_t::embed<OT::IntType<short, 2u> >(OT::IntType<short, 2u> const&) Unexecuted instantiation: OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Device, OT::IntType<unsigned short, 2u>, true> const&) Unexecuted instantiation: OT::GDEFVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::embed<OT::GDEFVersion1_2<OT::Layout::SmallTypes> >(OT::GDEFVersion1_2<OT::Layout::SmallTypes> const&) Unexecuted instantiation: OT::GDEFVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::embed<OT::GDEFVersion1_2<OT::Layout::MediumTypes> >(OT::GDEFVersion1_2<OT::Layout::MediumTypes> const&) Unexecuted instantiation: OT::LookupRecord* hb_serialize_context_t::embed<OT::LookupRecord>(OT::LookupRecord const&) Unexecuted instantiation: OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::GPOS_impl::Anchor, OT::IntType<unsigned short, 2u>, true> const&) Unexecuted instantiation: OT::VariationSelectorRecord* hb_serialize_context_t::embed<OT::VariationSelectorRecord>(OT::VariationSelectorRecord const&) Unexecuted instantiation: OT::ColorStop* hb_serialize_context_t::embed<OT::ColorStop>(OT::ColorStop const&) Unexecuted instantiation: OT::PaintSolid* hb_serialize_context_t::embed<OT::PaintSolid>(OT::PaintSolid const&) Unexecuted instantiation: OT::VarIdx* hb_serialize_context_t::embed<OT::VarIdx>(OT::VarIdx const&) Unexecuted instantiation: OT::ClipBoxFormat1* hb_serialize_context_t::embed<OT::ClipBoxFormat1>(OT::ClipBoxFormat1 const&) Unexecuted instantiation: OT::ClipBoxFormat2* hb_serialize_context_t::embed<OT::ClipBoxFormat2>(OT::ClipBoxFormat2 const&) Unexecuted instantiation: OT::BaseGlyphRecord* hb_serialize_context_t::embed<OT::BaseGlyphRecord>(OT::BaseGlyphRecord const&) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::embed<OT::IntType<unsigned char, 1u> >(OT::IntType<unsigned char, 1u> const&) Unexecuted instantiation: OT::Index* hb_serialize_context_t::embed<OT::Index>(OT::Index const&) Unexecuted instantiation: OT::HBFixed<OT::IntType<int, 4u>, 16u>* hb_serialize_context_t::embed<OT::HBFixed<OT::IntType<int, 4u>, 16u> >(OT::HBFixed<OT::IntType<int, 4u>, 16u> const&) Unexecuted instantiation: OT::AxisRecord* hb_serialize_context_t::embed<OT::AxisRecord>(OT::AxisRecord const&) Unexecuted instantiation: OT::Offset<OT::IntType<unsigned int, 4u>, true>* hb_serialize_context_t::embed<OT::Offset<OT::IntType<unsigned int, 4u>, true> >(OT::Offset<OT::IntType<unsigned int, 4u>, true> const&) Unexecuted instantiation: OT::Offset<OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::Offset<OT::IntType<unsigned short, 2u>, true> >(OT::Offset<OT::IntType<unsigned short, 2u>, true> const&) Unexecuted instantiation: OT::IndexSubtableRecord* hb_serialize_context_t::embed<OT::IndexSubtableRecord>(OT::IndexSubtableRecord const&) Unexecuted instantiation: OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true> const&) Unexecuted instantiation: OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::AxisValue, OT::IntType<unsigned short, 2u>, true> const&) Unexecuted instantiation: OT::StatAxisRecord* hb_serialize_context_t::embed<OT::StatAxisRecord>(OT::StatAxisRecord const&) Unexecuted instantiation: OT::MathGlyphInfo* hb_serialize_context_t::embed<OT::MathGlyphInfo>(OT::MathGlyphInfo const&) Unexecuted instantiation: OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true>* hb_serialize_context_t::embed<OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true> >(OT::OffsetTo<OT::MathGlyphConstruction, OT::IntType<unsigned short, 2u>, true> const&) Unexecuted instantiation: OT::MATH* hb_serialize_context_t::embed<OT::MATH>(OT::MATH const&) |
632 | | |
633 | | template <typename Type, typename ...Ts> auto |
634 | | _copy (const Type &src, hb_priority<1>, Ts&&... ds) HB_RETURN |
635 | | (Type *, src.copy (this, std::forward<Ts> (ds)...)) |
636 | | |
637 | | template <typename Type> auto |
638 | | _copy (const Type &src, hb_priority<0>) -> decltype (&(hb_declval<Type> () = src)) |
639 | 0 | { |
640 | 0 | Type *ret = this->allocate_size<Type> (sizeof (Type)); |
641 | 0 | if (unlikely (!ret)) return nullptr; |
642 | 0 | *ret = src; |
643 | 0 | return ret; |
644 | 0 | } Unexecuted instantiation: decltype (&(((hb_declval<OT::Index>)())={parm#1})) hb_serialize_context_t::_copy<OT::Index>(OT::Index const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >)())={parm#1})) hb_serialize_context_t::_copy<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> >(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes> >)())={parm#1})) hb_serialize_context_t::_copy<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes> >(OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes> const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::IntType<unsigned short, 2u> >)())={parm#1})) hb_serialize_context_t::_copy<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u> const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::IntType<unsigned int, 4u> >)())={parm#1})) hb_serialize_context_t::_copy<OT::IntType<unsigned int, 4u> >(OT::IntType<unsigned int, 4u> const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::UnicodeValueRange>)())={parm#1})) hb_serialize_context_t::_copy<OT::UnicodeValueRange>(OT::UnicodeValueRange const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::UVSMapping>)())={parm#1})) hb_serialize_context_t::_copy<OT::UVSMapping>(OT::UVSMapping const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::CmapSubtableLongGroup>)())={parm#1})) hb_serialize_context_t::_copy<OT::CmapSubtableLongGroup>(OT::CmapSubtableLongGroup const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::IntType<unsigned char, 1u> >)())={parm#1})) hb_serialize_context_t::_copy<OT::IntType<unsigned char, 1u> >(OT::IntType<unsigned char, 1u> const&, hb_priority<0u>) Unexecuted instantiation: decltype (&(((hb_declval<OT::VertOriginMetric>)())={parm#1})) hb_serialize_context_t::_copy<OT::VertOriginMetric>(OT::VertOriginMetric const&, hb_priority<0u>) |
645 | | |
646 | | /* Like embed, but active: calls obj.operator=() or obj.copy() to transfer data |
647 | | * instead of hb_memcpy(). */ |
648 | | template <typename Type, typename ...Ts> |
649 | | Type *copy (const Type &src, Ts&&... ds) |
650 | 0 | { return _copy (src, hb_prioritize, std::forward<Ts> (ds)...); } Unexecuted instantiation: OT::Index* hb_serialize_context_t::copy<OT::Index>(OT::Index const&) Unexecuted instantiation: OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::copy<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>>(OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes> const&) Unexecuted instantiation: OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::copy<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>>(OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes> const&) Unexecuted instantiation: OT::Device* hb_serialize_context_t::copy<OT::Device, hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>*>(OT::Device const&, hb_hashmap_t<unsigned int, hb_pair_t<unsigned int, int>, false>*&&) Unexecuted instantiation: OT::IntType<unsigned short, 2u>* hb_serialize_context_t::copy<OT::IntType<unsigned short, 2u>>(OT::IntType<unsigned short, 2u> const&) Unexecuted instantiation: OT::IntType<unsigned int, 4u>* hb_serialize_context_t::copy<OT::IntType<unsigned int, 4u>>(OT::IntType<unsigned int, 4u> const&) Unexecuted instantiation: OT::UnicodeValueRange* hb_serialize_context_t::copy<OT::UnicodeValueRange>(OT::UnicodeValueRange const&) Unexecuted instantiation: OT::UVSMapping* hb_serialize_context_t::copy<OT::UVSMapping>(OT::UVSMapping const&) Unexecuted instantiation: OT::NonDefaultUVS* hb_serialize_context_t::copy<OT::NonDefaultUVS, hb_set_t const*&, hb_set_t const*&, hb_map_t const*&>(OT::NonDefaultUVS const&, hb_set_t const*&, hb_set_t const*&, hb_map_t const*&) Unexecuted instantiation: OT::DefaultUVS* hb_serialize_context_t::copy<OT::DefaultUVS, hb_set_t const*&>(OT::DefaultUVS const&, hb_set_t const*&) Unexecuted instantiation: hb-common.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_10 const&)0>, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_10 const&)0>&&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: OT::CmapSubtableLongGroup* hb_serialize_context_t::copy<OT::CmapSubtableLongGroup>(OT::CmapSubtableLongGroup const&) Unexecuted instantiation: hb-common.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>&, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: OT::NoVariable<OT::Affine2x3>* hb_serialize_context_t::copy<OT::NoVariable<OT::Affine2x3>>(OT::NoVariable<OT::Affine2x3> const&) Unexecuted instantiation: OT::Variable<OT::Affine2x3>* hb_serialize_context_t::copy<OT::Variable<OT::Affine2x3>>(OT::Variable<OT::Affine2x3> const&) Unexecuted instantiation: OT::ClipBox* hb_serialize_context_t::copy<OT::ClipBox>(OT::ClipBox const&) Unexecuted instantiation: OT::ClipRecord* hb_serialize_context_t::copy<OT::ClipRecord, OT::ClipList const*>(OT::ClipRecord const&, OT::ClipList const*&&) Unexecuted instantiation: OT::DeltaSetIndexMap* hb_serialize_context_t::copy<OT::DeltaSetIndexMap>(OT::DeltaSetIndexMap const&) Unexecuted instantiation: OT::VariationStore* hb_serialize_context_t::copy<OT::VariationStore>(OT::VariationStore const&) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::copy<OT::IntType<unsigned char, 1u>>(OT::IntType<unsigned char, 1u> const&) Unexecuted instantiation: hb-face.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_10 const&)0>, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_10 const&)0>&&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: hb-face.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>&, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::copy<OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> >, unsigned int&>(OT::UnsizedArrayOf<OT::IntType<unsigned int, 4u> > const&, unsigned int&) Unexecuted instantiation: OT::UnsizedArrayOf<OT::Index>* hb_serialize_context_t::copy<OT::UnsizedArrayOf<OT::Index>, unsigned int&>(OT::UnsizedArrayOf<OT::Index> const&, unsigned int&) Unexecuted instantiation: hb-ot-face.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_11 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_11 const&)0>, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_11 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_11 const&)0>&&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: hb-ot-face.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_11 const&, (void*)0>&, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_11 const&, (void*)0>&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> >* hb_serialize_context_t::copy<OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> >, OT::IntType<unsigned short, 2u> const&>(OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> > const&, OT::IntType<unsigned short, 2u> const&) Unexecuted instantiation: OT::NameRecord* hb_serialize_context_t::copy<OT::NameRecord, void const*&, hb_hashmap_t<hb_ot_name_record_ids_t, hb_array_t<char const>, false> const*&>(OT::NameRecord const&, void const*&, hb_hashmap_t<hb_ot_name_record_ids_t, hb_array_t<char const>, false> const*&) Unexecuted instantiation: hb-ot-font.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_10 const&)0>, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>, hb_set_t const&, $_5 const&, ($_10 const&)0>&&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: hb-ot-font.cc:OT::EncodingRecord* hb_serialize_context_t::copy<OT::EncodingRecord, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>&, unsigned int, void const*&, hb_subset_plan_t*&, unsigned int*>(unsigned int* const&, hb_filter_iter_t<hb_sorted_array_t<hb_pair_t<unsigned int, unsigned int> const>, OT::cmap::subset(hb_subset_context_t*) const::{lambda(hb_pair_t<unsigned int, unsigned int>)#1}, $_10 const&, (void*)0>&, unsigned int&&, void const*&, hb_subset_plan_t*&, unsigned int*&&) Unexecuted instantiation: OT::VertOriginMetric* hb_serialize_context_t::copy<OT::VertOriginMetric>(OT::VertOriginMetric const&) Unexecuted instantiation: OT::Device* hb_serialize_context_t::copy<OT::Device>(OT::Device const&) Unexecuted instantiation: OT::MathValueRecord* hb_serialize_context_t::copy<OT::MathValueRecord, OT::MathConstants const*>(OT::MathValueRecord const&, OT::MathConstants const*&&) Unexecuted instantiation: OT::MathValueRecord* hb_serialize_context_t::copy<OT::MathValueRecord, void const*&>(OT::MathValueRecord const&, void const*&) Unexecuted instantiation: OT::MathValueRecord* hb_serialize_context_t::copy<OT::MathValueRecord, OT::MathKern const*>(OT::MathValueRecord const&, OT::MathKern const*&&) Unexecuted instantiation: OT::MathKern* hb_serialize_context_t::copy<OT::MathKern>(OT::MathKern const&) Unexecuted instantiation: OT::MathKernInfoRecord* hb_serialize_context_t::copy<OT::MathKernInfoRecord, void const*&>(OT::MathKernInfoRecord const&, void const*&) Unexecuted instantiation: OT::MathValueRecord* hb_serialize_context_t::copy<OT::MathValueRecord, OT::MathGlyphAssembly const*>(OT::MathValueRecord const&, OT::MathGlyphAssembly const*&&) Unexecuted instantiation: OT::MathConstants* hb_serialize_context_t::copy<OT::MathConstants>(OT::MathConstants const&) |
651 | | template <typename Type, typename ...Ts> |
652 | | Type *copy (const Type *src, Ts&&... ds) |
653 | | { return copy (*src, std::forward<Ts> (ds)...); } |
654 | | |
655 | | template<typename Iterator, |
656 | | hb_requires (hb_is_iterator (Iterator)), |
657 | | typename ...Ts> |
658 | | void copy_all (Iterator it, Ts&&... ds) |
659 | 0 | { for (decltype (*it) _ : it) copy (_, std::forward<Ts> (ds)...); } Unexecuted instantiation: void hb_serialize_context_t::copy_all<hb_array_t<OT::NameRecord>, (void*)0, void const*&, hb_hashmap_t<hb_ot_name_record_ids_t, hb_array_t<char const>, false> const*&>(hb_array_t<OT::NameRecord>, void const*&, hb_hashmap_t<hb_ot_name_record_ids_t, hb_array_t<char const>, false> const*&) Unexecuted instantiation: void hb_serialize_context_t::copy_all<hb_map_iter_t<hb_filter_iter_t<hb_sorted_array_t<OT::VertOriginMetric const>, hb_set_t const*, OT::HBGlyphID16 OT::VertOriginMetric::*, (void*)0>, OT::VORG::subset(hb_subset_context_t*) const::{lambda(OT::VertOriginMetric const&)#1}, (hb_function_sortedness_t)0, (void*)0>, (void*)0>(hb_map_iter_t<hb_filter_iter_t<hb_sorted_array_t<OT::VertOriginMetric const>, hb_set_t const*, OT::HBGlyphID16 OT::VertOriginMetric::*, (void*)0>, OT::VORG::subset(hb_subset_context_t*) const::{lambda(OT::VertOriginMetric const&)#1}, (hb_function_sortedness_t)0, (void*)0>) |
660 | | |
661 | | template <typename Type> |
662 | | hb_serialize_context_t& operator << (const Type &obj) & { embed (obj); return *this; } |
663 | | |
664 | | template <typename Type> |
665 | | Type *extend_size (Type *obj, size_t size, bool clear = true) |
666 | 1.57M | { |
667 | 1.57M | if (unlikely (in_error ())) return nullptr; |
668 | | |
669 | 1.57M | assert (this->start <= (char *) obj); |
670 | 0 | assert ((char *) obj <= this->head); |
671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); |
672 | 1.57M | if (unlikely (((char *) obj + size < (char *) obj) || |
673 | 1.57M | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; |
674 | 1.57M | return reinterpret_cast<Type *> (obj); |
675 | 1.57M | } OT::Layout::Common::Coverage* hb_serialize_context_t::extend_size<OT::Layout::Common::Coverage>(OT::Layout::Common::Coverage*, unsigned long, bool) Line | Count | Source | 666 | 31.4k | { | 667 | 31.4k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 31.1k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 31.1k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 31.1k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 31.1k | return reinterpret_cast<Type *> (obj); | 675 | 31.1k | } |
OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Line | Count | Source | 666 | 77.8k | { | 667 | 77.8k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 77.8k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 77.8k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 77.8k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 77.8k | return reinterpret_cast<Type *> (obj); | 675 | 77.8k | } |
OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>*, unsigned long, bool) Line | Count | Source | 666 | 3.32k | { | 667 | 3.32k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 3.32k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 3.32k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 3.32k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 3.32k | return reinterpret_cast<Type *> (obj); | 675 | 3.32k | } |
OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Line | Count | Source | 666 | 6.65k | { | 667 | 6.65k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 6.65k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 6.65k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 6.65k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 6.65k | return reinterpret_cast<Type *> (obj); | 675 | 6.65k | } |
Unexecuted instantiation: OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Feature* hb_serialize_context_t::extend_size<OT::Feature>(OT::Feature*, unsigned long, bool) Unexecuted instantiation: OT::IndexArray* hb_serialize_context_t::extend_size<OT::IndexArray>(OT::IndexArray*, unsigned long, bool) Unexecuted instantiation: OT::RecordListOfFeature* hb_serialize_context_t::extend_size<OT::RecordListOfFeature>(OT::RecordListOfFeature*, unsigned long, bool) Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::extend_size<OT::LangSys>(OT::LangSys*, unsigned long, bool) Unexecuted instantiation: OT::Script* hb_serialize_context_t::extend_size<OT::Script>(OT::Script*, unsigned long, bool) Unexecuted instantiation: OT::RecordListOfScript* hb_serialize_context_t::extend_size<OT::RecordListOfScript>(OT::RecordListOfScript*, unsigned long, bool) OT::Lookup* hb_serialize_context_t::extend_size<OT::Lookup>(OT::Lookup*, unsigned long, bool) Line | Count | Source | 666 | 34.6k | { | 667 | 34.6k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 33.1k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 33.1k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 33.1k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 33.1k | return reinterpret_cast<Type *> (obj); | 675 | 33.1k | } |
OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Line | Count | Source | 666 | 66.3k | { | 667 | 66.3k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 66.3k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 66.3k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 66.3k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 66.3k | return reinterpret_cast<Type *> (obj); | 675 | 66.3k | } |
Unexecuted instantiation: OT::ClassDef* hb_serialize_context_t::extend_size<OT::ClassDef>(OT::ClassDef*, unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ClassDefFormat1_3<OT::Layout::SmallTypes> >(OT::ClassDefFormat1_3<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ClassDefFormat2_4<OT::Layout::SmallTypes> >(OT::ClassDefFormat2_4<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ClassDefFormat1_3<OT::Layout::MediumTypes> >(OT::ClassDefFormat1_3<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> > >(OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> >*, unsigned long, bool) Unexecuted instantiation: OT::ClassDefFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ClassDefFormat2_4<OT::Layout::MediumTypes> >(OT::ClassDefFormat2_4<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::VarRegionList* hb_serialize_context_t::extend_size<OT::VarRegionList>(OT::VarRegionList*, unsigned long, bool) Unexecuted instantiation: OT::VarData* hb_serialize_context_t::extend_size<OT::VarData>(OT::VarData*, unsigned long, bool) Unexecuted instantiation: OT::VariationStore* hb_serialize_context_t::extend_size<OT::VariationStore>(OT::VariationStore*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ConditionSet* hb_serialize_context_t::extend_size<OT::ConditionSet>(OT::ConditionSet*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::FeatureTableSubstitution* hb_serialize_context_t::extend_size<OT::FeatureTableSubstitution>(OT::FeatureTableSubstitution*, unsigned long, bool) Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::extend_size<OT::FeatureVariations>(OT::FeatureVariations*, unsigned long, bool) Unexecuted instantiation: OT::AttachList* hb_serialize_context_t::extend_size<OT::AttachList>(OT::AttachList*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::LigGlyph* hb_serialize_context_t::extend_size<OT::LigGlyph>(OT::LigGlyph*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::LigCaretList* hb_serialize_context_t::extend_size<OT::LigCaretList>(OT::LigCaretList*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::MarkGlyphSetsFormat1* hb_serialize_context_t::extend_size<OT::MarkGlyphSetsFormat1>(OT::MarkGlyphSetsFormat1*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ContextFormat3* hb_serialize_context_t::extend_size<OT::ContextFormat3>(OT::ContextFormat3*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) OT::IntType<unsigned short, 2u>* hb_serialize_context_t::extend_size<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u>*, unsigned long, bool) Line | Count | Source | 666 | 33.1k | { | 667 | 33.1k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 33.1k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 33.1k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 33.1k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 33.1k | return reinterpret_cast<Type *> (obj); | 675 | 33.1k | } |
Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePosFormat1* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::SinglePosFormat1>(OT::Layout::GPOS_impl::SinglePosFormat1*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePosFormat2* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::SinglePosFormat2>(OT::Layout::GPOS_impl::SinglePosFormat2*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::CursivePosFormat1* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::CursivePosFormat1>(OT::Layout::GPOS_impl::CursivePosFormat1*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkArray* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkArray>(OT::Layout::GPOS_impl::MarkArray*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorMatrix* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::AnchorMatrix>(OT::Layout::GPOS_impl::AnchorMatrix*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::LigatureArray* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::LigatureArray>(OT::Layout::GPOS_impl::LigatureArray*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ContextFormat1_4<OT::Layout::SmallTypes> >(OT::ContextFormat1_4<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::RuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::RuleSet<OT::Layout::SmallTypes> >(OT::RuleSet<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Rule<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Rule<OT::Layout::SmallTypes> >(OT::Rule<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ContextFormat2_5<OT::Layout::SmallTypes> >(OT::ContextFormat2_5<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ContextFormat1_4<OT::Layout::MediumTypes> >(OT::ContextFormat1_4<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::RuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::RuleSet<OT::Layout::MediumTypes> >(OT::RuleSet<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Rule<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Rule<OT::Layout::MediumTypes> >(OT::Rule<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ContextFormat2_5<OT::Layout::MediumTypes> >(OT::ContextFormat2_5<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ChainContextFormat1_4<OT::Layout::SmallTypes> >(OT::ChainContextFormat1_4<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ChainRuleSet<OT::Layout::SmallTypes> >(OT::ChainRuleSet<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::ChainContextFormat2_5<OT::Layout::SmallTypes> >(OT::ChainContextFormat2_5<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ChainContextFormat1_4<OT::Layout::MediumTypes> >(OT::ChainContextFormat1_4<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ChainRuleSet<OT::Layout::MediumTypes> >(OT::ChainRuleSet<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::ChainContextFormat2_5<OT::Layout::MediumTypes> >(OT::ChainContextFormat2_5<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos>* hb_serialize_context_t::extend_size<OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos> >(OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos>*, unsigned long, bool) Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes> >(OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> > >(OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true>* hb_serialize_context_t::extend_size<OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true>*, unsigned long, bool) Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes> >(OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::extend_size<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> > >(OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableFormat14* hb_serialize_context_t::extend_size<OT::CmapSubtableFormat14>(OT::CmapSubtableFormat14*, unsigned long, bool) Unexecuted instantiation: OT::cmap* hb_serialize_context_t::extend_size<OT::cmap>(OT::cmap*, unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableFormat4* hb_serialize_context_t::extend_size<OT::CmapSubtableFormat4>(OT::CmapSubtableFormat4*, unsigned long, bool) Unexecuted instantiation: OT::CmapSubtableFormat12* hb_serialize_context_t::extend_size<OT::CmapSubtableFormat12>(OT::CmapSubtableFormat12*, unsigned long, bool) Unexecuted instantiation: OT::ColorLine<OT::NoVariable>* hb_serialize_context_t::extend_size<OT::ColorLine<OT::NoVariable> >(OT::ColorLine<OT::NoVariable>*, unsigned long, bool) Unexecuted instantiation: OT::ColorLine<OT::Variable>* hb_serialize_context_t::extend_size<OT::ColorLine<OT::Variable> >(OT::ColorLine<OT::Variable>*, unsigned long, bool) Unexecuted instantiation: OT::ClipList* hb_serialize_context_t::extend_size<OT::ClipList>(OT::ClipList*, unsigned long, bool) Unexecuted instantiation: OT::BaseGlyphList* hb_serialize_context_t::extend_size<OT::BaseGlyphList>(OT::BaseGlyphList*, unsigned long, bool) Unexecuted instantiation: OT::LayerList* hb_serialize_context_t::extend_size<OT::LayerList>(OT::LayerList*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > >(OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >*, unsigned long, bool) Unexecuted instantiation: OT::COLR* hb_serialize_context_t::extend_size<OT::COLR>(OT::COLR*, unsigned long, bool) Unexecuted instantiation: OT::LayerRecord* hb_serialize_context_t::extend_size<OT::LayerRecord>(OT::LayerRecord*, unsigned long, bool) Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> > >(OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend_size<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> > >(OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> >*, unsigned long, bool) Unexecuted instantiation: char* hb_serialize_context_t::extend_size<char>(char*, unsigned long, bool) Unexecuted instantiation: OT::IndexSubtable* hb_serialize_context_t::extend_size<OT::IndexSubtable>(OT::IndexSubtable*, unsigned long, bool) Unexecuted instantiation: OT::CBLC* hb_serialize_context_t::extend_size<OT::CBLC>(OT::CBLC*, unsigned long, bool) Unexecuted instantiation: OT::IntType<unsigned int, 4u>* hb_serialize_context_t::extend_size<OT::IntType<unsigned int, 4u> >(OT::IntType<unsigned int, 4u>*, unsigned long, bool) Unexecuted instantiation: OT::Index* hb_serialize_context_t::extend_size<OT::Index>(OT::Index*, unsigned long, bool) Unexecuted instantiation: OT::CPAL* hb_serialize_context_t::extend_size<OT::CPAL>(OT::CPAL*, unsigned long, bool) Unexecuted instantiation: OT::SBIXGlyph* hb_serialize_context_t::extend_size<OT::SBIXGlyph>(OT::SBIXGlyph*, unsigned long, bool) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::extend_size<OT::IntType<unsigned char, 1u> >(OT::IntType<unsigned char, 1u>*, unsigned long, bool) Unexecuted instantiation: OT::SBIXStrike* hb_serialize_context_t::extend_size<OT::SBIXStrike>(OT::SBIXStrike*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > >(OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >*, unsigned long, bool) Unexecuted instantiation: CFF::Encoding* hb_serialize_context_t::extend_size<CFF::Encoding>(CFF::Encoding*, unsigned long, bool) Unexecuted instantiation: CFF::Charset* hb_serialize_context_t::extend_size<CFF::Charset>(CFF::Charset*, unsigned long, bool) Unexecuted instantiation: CFF::CFFIndex<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<CFF::CFFIndex<OT::IntType<unsigned short, 2u> > >(CFF::CFFIndex<OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: unsigned char* hb_serialize_context_t::extend_size<unsigned char>(unsigned char*, unsigned long, bool) Unexecuted instantiation: OT::name* hb_serialize_context_t::extend_size<OT::name>(OT::name*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Line | Count | Source | 666 | 17.7k | { | 667 | 17.7k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 17.7k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 17.7k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 17.7k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 17.7k | return reinterpret_cast<Type *> (obj); | 675 | 17.7k | } |
OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Line | Count | Source | 666 | 35.5k | { | 667 | 35.5k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 35.5k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 35.5k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 35.5k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 35.5k | return reinterpret_cast<Type *> (obj); | 675 | 35.5k | } |
OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>*, unsigned long, bool) Line | Count | Source | 666 | 108k | { | 667 | 108k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 108k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 108k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 108k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 108k | return reinterpret_cast<Type *> (obj); | 675 | 108k | } |
OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Line | Count | Source | 666 | 216k | { | 667 | 216k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 216k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 216k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 216k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 216k | return reinterpret_cast<Type *> (obj); | 675 | 216k | } |
OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>*, unsigned long, bool) Line | Count | Source | 666 | 310k | { | 667 | 310k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 309k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 309k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 309k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 309k | return reinterpret_cast<Type *> (obj); | 675 | 309k | } |
OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Line | Count | Source | 666 | 619k | { | 667 | 619k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 619k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 619k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 619k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 619k | return reinterpret_cast<Type *> (obj); | 675 | 619k | } |
Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes>*, unsigned long, bool) Line | Count | Source | 666 | 4.33k | { | 667 | 4.33k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 4.33k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 4.33k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 4.33k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 4.33k | return reinterpret_cast<Type *> (obj); | 675 | 4.33k | } |
OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes>*, unsigned long, bool) Line | Count | Source | 666 | 11.0k | { | 667 | 11.0k | if (unlikely (in_error ())) return nullptr; | 668 | | | 669 | 11.0k | assert (this->start <= (char *) obj); | 670 | 0 | assert ((char *) obj <= this->head); | 671 | 0 | assert ((size_t) (this->head - (char *) obj) <= size); | 672 | 11.0k | if (unlikely (((char *) obj + size < (char *) obj) || | 673 | 11.0k | !this->allocate_size<Type> (((char *) obj) + size - this->head, clear))) return nullptr; | 674 | 11.0k | return reinterpret_cast<Type *> (obj); | 675 | 11.0k | } |
Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_size<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>*, unsigned long, bool) Unexecuted instantiation: OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> > >(OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst>* hb_serialize_context_t::extend_size<OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst> >(OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst>*, unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> > >(OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::extend_size<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> > >(OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >*, unsigned long, bool) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_size<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*, unsigned long, bool) Unexecuted instantiation: OT::VORG* hb_serialize_context_t::extend_size<OT::VORG>(OT::VORG*, unsigned long, bool) Unexecuted instantiation: OT::MathItalicsCorrectionInfo* hb_serialize_context_t::extend_size<OT::MathItalicsCorrectionInfo>(OT::MathItalicsCorrectionInfo*, unsigned long, bool) Unexecuted instantiation: OT::MathTopAccentAttachment* hb_serialize_context_t::extend_size<OT::MathTopAccentAttachment>(OT::MathTopAccentAttachment*, unsigned long, bool) Unexecuted instantiation: OT::MathKernInfo* hb_serialize_context_t::extend_size<OT::MathKernInfo>(OT::MathKernInfo*, unsigned long, bool) Unexecuted instantiation: OT::MathGlyphConstruction* hb_serialize_context_t::extend_size<OT::MathGlyphConstruction>(OT::MathGlyphConstruction*, unsigned long, bool) Unexecuted instantiation: OT::MathVariants* hb_serialize_context_t::extend_size<OT::MathVariants>(OT::MathVariants*, unsigned long, bool) |
676 | | template <typename Type> |
677 | | Type *extend_size (Type &obj, size_t size, bool clear = true) |
678 | | { return extend_size (std::addressof (obj), size, clear); } |
679 | | |
680 | | template <typename Type> |
681 | 1.06M | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } OT::Layout::Common::Coverage* hb_serialize_context_t::extend_min<OT::Layout::Common::Coverage>(OT::Layout::Common::Coverage*) Line | Count | Source | 681 | 31.4k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >*) Line | Count | Source | 681 | 38.9k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>*) Line | Count | Source | 681 | 3.32k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u> >*) Line | Count | Source | 681 | 3.32k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
Unexecuted instantiation: OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::Common::CoverageFormat2_4<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::Layout::Common::RangeRecord<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::Feature* hb_serialize_context_t::extend_min<OT::Feature>(OT::Feature*) Unexecuted instantiation: OT::IndexArray* hb_serialize_context_t::extend_min<OT::IndexArray>(OT::IndexArray*) Unexecuted instantiation: OT::RecordListOfFeature* hb_serialize_context_t::extend_min<OT::RecordListOfFeature>(OT::RecordListOfFeature*) Unexecuted instantiation: OT::LangSys* hb_serialize_context_t::extend_min<OT::LangSys>(OT::LangSys*) Unexecuted instantiation: OT::Script* hb_serialize_context_t::extend_min<OT::Script>(OT::Script*) Unexecuted instantiation: OT::RecordListOfScript* hb_serialize_context_t::extend_min<OT::RecordListOfScript>(OT::RecordListOfScript*) OT::Lookup* hb_serialize_context_t::extend_min<OT::Lookup>(OT::Lookup*) Line | Count | Source | 681 | 34.6k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::Offset<OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Line | Count | Source | 681 | 33.1k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
Unexecuted instantiation: OT::ClassDef* hb_serialize_context_t::extend_min<OT::ClassDef>(OT::ClassDef*) Unexecuted instantiation: OT::ClassDefFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ClassDefFormat1_3<OT::Layout::SmallTypes> >(OT::ClassDefFormat1_3<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ClassDefFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ClassDefFormat2_4<OT::Layout::SmallTypes> >(OT::ClassDefFormat2_4<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ClassDefFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ClassDefFormat1_3<OT::Layout::MediumTypes> >(OT::ClassDefFormat1_3<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> > >(OT::ArrayOf<OT::IntType<unsigned short, 2u>, OT::IntType<unsigned int, 3u> >*) Unexecuted instantiation: OT::ClassDefFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ClassDefFormat2_4<OT::Layout::MediumTypes> >(OT::ClassDefFormat2_4<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::VarRegionList* hb_serialize_context_t::extend_min<OT::VarRegionList>(OT::VarRegionList*) Unexecuted instantiation: OT::VarData* hb_serialize_context_t::extend_min<OT::VarData>(OT::VarData*) Unexecuted instantiation: OT::VariationStore* hb_serialize_context_t::extend_min<OT::VariationStore>(OT::VariationStore*) Unexecuted instantiation: OT::ConditionSet* hb_serialize_context_t::extend_min<OT::ConditionSet>(OT::ConditionSet*) Unexecuted instantiation: OT::FeatureTableSubstitution* hb_serialize_context_t::extend_min<OT::FeatureTableSubstitution>(OT::FeatureTableSubstitution*) Unexecuted instantiation: OT::FeatureVariations* hb_serialize_context_t::extend_min<OT::FeatureVariations>(OT::FeatureVariations*) Unexecuted instantiation: OT::AttachList* hb_serialize_context_t::extend_min<OT::AttachList>(OT::AttachList*) Unexecuted instantiation: OT::LigGlyph* hb_serialize_context_t::extend_min<OT::LigGlyph>(OT::LigGlyph*) Unexecuted instantiation: OT::LigCaretList* hb_serialize_context_t::extend_min<OT::LigCaretList>(OT::LigCaretList*) Unexecuted instantiation: OT::MarkGlyphSetsFormat1* hb_serialize_context_t::extend_min<OT::MarkGlyphSetsFormat1>(OT::MarkGlyphSetsFormat1*) Unexecuted instantiation: OT::ContextFormat3* hb_serialize_context_t::extend_min<OT::ContextFormat3>(OT::ContextFormat3*) OT::IntType<unsigned short, 2u>* hb_serialize_context_t::extend_min<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u>*) Line | Count | Source | 681 | 33.1k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePosFormat1* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::SinglePosFormat1>(OT::Layout::GPOS_impl::SinglePosFormat1*) Unexecuted instantiation: OT::Layout::GPOS_impl::SinglePosFormat2* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::SinglePosFormat2>(OT::Layout::GPOS_impl::SinglePosFormat2*) Unexecuted instantiation: OT::Layout::GPOS_impl::CursivePosFormat1* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::CursivePosFormat1>(OT::Layout::GPOS_impl::CursivePosFormat1*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairValueRecord<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::PairPosFormat2_4<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkArray* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkArray>(OT::Layout::GPOS_impl::MarkArray*) Unexecuted instantiation: OT::Layout::GPOS_impl::AnchorMatrix* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::AnchorMatrix>(OT::Layout::GPOS_impl::AnchorMatrix*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkBasePosFormat1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::LigatureArray* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::LigatureArray>(OT::Layout::GPOS_impl::LigatureArray*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkLigPosFormat1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GPOS_impl::MarkMarkPosFormat1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ContextFormat1_4<OT::Layout::SmallTypes> >(OT::ContextFormat1_4<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::RuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::RuleSet<OT::Layout::SmallTypes> >(OT::RuleSet<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Rule<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Rule<OT::Layout::SmallTypes> >(OT::Rule<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ContextFormat2_5<OT::Layout::SmallTypes> >(OT::ContextFormat2_5<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ContextFormat1_4<OT::Layout::MediumTypes> >(OT::ContextFormat1_4<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::RuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::RuleSet<OT::Layout::MediumTypes> >(OT::RuleSet<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Rule<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Rule<OT::Layout::MediumTypes> >(OT::Rule<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ContextFormat2_5<OT::Layout::MediumTypes> >(OT::ContextFormat2_5<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ChainContextFormat1_4<OT::Layout::SmallTypes> >(OT::ChainContextFormat1_4<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ChainRuleSet<OT::Layout::SmallTypes> >(OT::ChainRuleSet<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::ChainContextFormat2_5<OT::Layout::SmallTypes> >(OT::ChainContextFormat2_5<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ChainContextFormat1_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ChainContextFormat1_4<OT::Layout::MediumTypes> >(OT::ChainContextFormat1_4<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ChainRuleSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ChainRuleSet<OT::Layout::MediumTypes> >(OT::ChainRuleSet<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ChainContextFormat2_5<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::ChainContextFormat2_5<OT::Layout::MediumTypes> >(OT::ChainContextFormat2_5<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos>* hb_serialize_context_t::extend_min<OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos> >(OT::ExtensionFormat1<OT::Layout::GPOS_impl::ExtensionPos>*) Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes> >(OT::GSUBGPOSVersion1_2<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> > >(OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true>* hb_serialize_context_t::extend_min<OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true> >(OT::OffsetTo<OT::FeatureVariations, OT::IntType<unsigned int, 4u>, true>*) Unexecuted instantiation: OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes> >(OT::GSUBGPOSVersion1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::extend_min<OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> > >(OT::LookupOffsetList<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u> >*) Unexecuted instantiation: OT::CmapSubtableFormat14* hb_serialize_context_t::extend_min<OT::CmapSubtableFormat14>(OT::CmapSubtableFormat14*) Unexecuted instantiation: OT::cmap* hb_serialize_context_t::extend_min<OT::cmap>(OT::cmap*) Unexecuted instantiation: OT::CmapSubtableFormat4* hb_serialize_context_t::extend_min<OT::CmapSubtableFormat4>(OT::CmapSubtableFormat4*) Unexecuted instantiation: OT::CmapSubtableFormat12* hb_serialize_context_t::extend_min<OT::CmapSubtableFormat12>(OT::CmapSubtableFormat12*) Unexecuted instantiation: OT::ColorLine<OT::NoVariable>* hb_serialize_context_t::extend_min<OT::ColorLine<OT::NoVariable> >(OT::ColorLine<OT::NoVariable>*) Unexecuted instantiation: OT::ColorLine<OT::Variable>* hb_serialize_context_t::extend_min<OT::ColorLine<OT::Variable> >(OT::ColorLine<OT::Variable>*) Unexecuted instantiation: OT::ClipList* hb_serialize_context_t::extend_min<OT::ClipList>(OT::ClipList*) Unexecuted instantiation: OT::BaseGlyphList* hb_serialize_context_t::extend_min<OT::BaseGlyphList>(OT::BaseGlyphList*) Unexecuted instantiation: OT::LayerList* hb_serialize_context_t::extend_min<OT::LayerList>(OT::LayerList*) Unexecuted instantiation: OT::COLR* hb_serialize_context_t::extend_min<OT::COLR>(OT::COLR*) Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> > >(OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend_min<OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> > >(OT::DeltaSetIndexMapFormat01<OT::IntType<unsigned int, 4u> >*) Unexecuted instantiation: OT::IndexSubtable* hb_serialize_context_t::extend_min<OT::IndexSubtable>(OT::IndexSubtable*) Unexecuted instantiation: OT::CBLC* hb_serialize_context_t::extend_min<OT::CBLC>(OT::CBLC*) Unexecuted instantiation: OT::CPAL* hb_serialize_context_t::extend_min<OT::CPAL>(OT::CPAL*) Unexecuted instantiation: OT::SBIXGlyph* hb_serialize_context_t::extend_min<OT::SBIXGlyph>(OT::SBIXGlyph*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> > >(OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >*) Unexecuted instantiation: CFF::Encoding* hb_serialize_context_t::extend_min<CFF::Encoding>(CFF::Encoding*) Unexecuted instantiation: CFF::Charset* hb_serialize_context_t::extend_min<CFF::Charset>(CFF::Charset*) Unexecuted instantiation: CFF::CFFIndex<OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<CFF::CFFIndex<OT::IntType<unsigned short, 2u> > >(CFF::CFFIndex<OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::name* hb_serialize_context_t::extend_min<OT::name>(OT::name*) Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::SmallTypes>*) Line | Count | Source | 681 | 17.7k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Line | Count | Source | 681 | 17.7k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>*) Line | Count | Source | 681 | 108k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> > >(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Line | Count | Source | 681 | 108k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>*) Line | Count | Source | 681 | 310k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> > >(OT::HeadlessArrayOf<OT::HBGlyphID16, OT::IntType<unsigned short, 2u> >*) Line | Count | Source | 681 | 309k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::SmallTypes>*) Line | Count | Source | 681 | 4.33k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::SmallTypes>*) Line | Count | Source | 681 | 11.0k | Type *extend_min (Type *obj) { return extend_size (obj, obj->min_size); } |
Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat1_3<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::SingleSubstFormat2_4<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSubstFormat1_2<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>* hb_serialize_context_t::extend_min<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes> >(OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>*) Unexecuted instantiation: OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> > >(OT::HeadlessArrayOf<OT::HBGlyphID24, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst>* hb_serialize_context_t::extend_min<OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst> >(OT::ExtensionFormat1<OT::Layout::GSUB_impl::ExtensionSubst>*) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend_min<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> > >(OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >* hb_serialize_context_t::extend_min<OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> > >(OT::LookupOffsetList<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u> >*) Unexecuted instantiation: OT::VORG* hb_serialize_context_t::extend_min<OT::VORG>(OT::VORG*) Unexecuted instantiation: OT::MathItalicsCorrectionInfo* hb_serialize_context_t::extend_min<OT::MathItalicsCorrectionInfo>(OT::MathItalicsCorrectionInfo*) Unexecuted instantiation: OT::MathTopAccentAttachment* hb_serialize_context_t::extend_min<OT::MathTopAccentAttachment>(OT::MathTopAccentAttachment*) Unexecuted instantiation: OT::MathKernInfo* hb_serialize_context_t::extend_min<OT::MathKernInfo>(OT::MathKernInfo*) Unexecuted instantiation: OT::MathGlyphConstruction* hb_serialize_context_t::extend_min<OT::MathGlyphConstruction>(OT::MathGlyphConstruction*) Unexecuted instantiation: OT::MathVariants* hb_serialize_context_t::extend_min<OT::MathVariants>(OT::MathVariants*) |
682 | | template <typename Type> |
683 | 33.1k | Type *extend_min (Type &obj) { return extend_min (std::addressof (obj)); } Unexecuted instantiation: OT::IndexArray* hb_serialize_context_t::extend_min<OT::IndexArray>(OT::IndexArray&) OT::IntType<unsigned short, 2u>* hb_serialize_context_t::extend_min<OT::IntType<unsigned short, 2u> >(OT::IntType<unsigned short, 2u>&) Line | Count | Source | 683 | 33.1k | Type *extend_min (Type &obj) { return extend_min (std::addressof (obj)); } |
Unexecuted instantiation: OT::Layout::GPOS_impl::CursivePosFormat1* hb_serialize_context_t::extend_min<OT::Layout::GPOS_impl::CursivePosFormat1>(OT::Layout::GPOS_impl::CursivePosFormat1&) Unexecuted instantiation: OT::cmap* hb_serialize_context_t::extend_min<OT::cmap>(OT::cmap&) Unexecuted instantiation: OT::name* hb_serialize_context_t::extend_min<OT::name>(OT::name&) Unexecuted instantiation: OT::VORG* hb_serialize_context_t::extend_min<OT::VORG>(OT::VORG&) |
684 | | |
685 | | template <typename Type, typename ...Ts> |
686 | | Type *extend (Type *obj, Ts&&... ds) |
687 | 0 | { return extend_size (obj, obj->get_size (std::forward<Ts> (ds)...)); } Unexecuted instantiation: OT::Lookup* hb_serialize_context_t::extend<OT::Lookup>(OT::Lookup*) Unexecuted instantiation: OT::VarRegionList* hb_serialize_context_t::extend<OT::VarRegionList>(OT::VarRegionList*) Unexecuted instantiation: OT::VarData* hb_serialize_context_t::extend<OT::VarData>(OT::VarData*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Condition, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::AttachPoint, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::CaretValue, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::LigGlyph, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PosLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >>(OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >*) Unexecuted instantiation: OT::SBIXStrike* hb_serialize_context_t::extend<OT::SBIXStrike, unsigned int>(OT::SBIXStrike*, unsigned int&&) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >>(OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned int, 4u> >*) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::extend<OT::IntType<unsigned char, 1u>>(OT::IntType<unsigned char, 1u>*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookupSubTable, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::LigatureSet<OT::Layout::MediumTypes>, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::MediumTypes>, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned short, 2u>, true>, OT::IntType<unsigned short, 2u> >*) Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::SubstLookup, OT::IntType<unsigned int, 3u>, true>, OT::IntType<unsigned short, 2u> >*) |
688 | | template <typename Type, typename ...Ts> |
689 | | Type *extend (Type &obj, Ts&&... ds) |
690 | 0 | { return extend (std::addressof (obj), std::forward<Ts> (ds)...); } Unexecuted instantiation: OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >* hb_serialize_context_t::extend<OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >>(OT::ArrayOf<OT::OffsetTo<OT::VarData, OT::IntType<unsigned int, 4u>, true>, OT::IntType<unsigned short, 2u> >&) Unexecuted instantiation: OT::IntType<unsigned char, 1u>* hb_serialize_context_t::extend<OT::IntType<unsigned char, 1u>>(OT::IntType<unsigned char, 1u>&) |
691 | | |
692 | | /* Output routines. */ |
693 | | hb_bytes_t copy_bytes () const |
694 | 29.6k | { |
695 | 29.6k | assert (successful ()); |
696 | | /* Copy both items from head side and tail side... */ |
697 | 0 | unsigned int len = (this->head - this->start) |
698 | 29.6k | + (this->end - this->tail); |
699 | | |
700 | | // If len is zero don't hb_malloc as the memory won't get properly |
701 | | // cleaned up later. |
702 | 29.6k | if (!len) return hb_bytes_t (); |
703 | | |
704 | 29.6k | char *p = (char *) hb_malloc (len); |
705 | 29.6k | if (unlikely (!p)) return hb_bytes_t (); |
706 | | |
707 | 29.3k | hb_memcpy (p, this->start, this->head - this->start); |
708 | 29.3k | hb_memcpy (p + (this->head - this->start), this->tail, this->end - this->tail); |
709 | 29.3k | return hb_bytes_t (p, len); |
710 | 29.6k | } |
711 | | template <typename Type> |
712 | | Type *copy () const |
713 | 29.6k | { return reinterpret_cast<Type *> ((char *) copy_bytes ().arrayZ); } |
714 | | hb_blob_t *copy_blob () const |
715 | 0 | { |
716 | 0 | hb_bytes_t b = copy_bytes (); |
717 | 0 | return hb_blob_create (b.arrayZ, b.length, |
718 | 0 | HB_MEMORY_MODE_WRITABLE, |
719 | 0 | (char *) b.arrayZ, hb_free); |
720 | 0 | } |
721 | | |
722 | | const hb_vector_t<object_t *>& object_graph() const |
723 | 0 | { return packed; } |
724 | | |
725 | | private: |
726 | | template <typename T, unsigned Size = sizeof (T)> |
727 | | void assign_offset (const object_t* parent, const object_t::link_t &link, unsigned offset) |
728 | 387k | { |
729 | 387k | auto &off = * ((BEInt<T, Size> *) (parent->head + link.position)); |
730 | 387k | assert (0 == off); |
731 | 0 | check_assign (off, offset, HB_SERIALIZE_ERROR_OFFSET_OVERFLOW); |
732 | 387k | } Unexecuted instantiation: void hb_serialize_context_t::assign_offset<int, 4u>(hb_serialize_context_t::object_t const*, hb_serialize_context_t::object_t::link_t const&, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::assign_offset<short, 2u>(hb_serialize_context_t::object_t const*, hb_serialize_context_t::object_t::link_t const&, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::assign_offset<unsigned int, 4u>(hb_serialize_context_t::object_t const*, hb_serialize_context_t::object_t::link_t const&, unsigned int) Unexecuted instantiation: void hb_serialize_context_t::assign_offset<unsigned int, 3u>(hb_serialize_context_t::object_t const*, hb_serialize_context_t::object_t::link_t const&, unsigned int) void hb_serialize_context_t::assign_offset<unsigned short, 2u>(hb_serialize_context_t::object_t const*, hb_serialize_context_t::object_t::link_t const&, unsigned int) Line | Count | Source | 728 | 387k | { | 729 | 387k | auto &off = * ((BEInt<T, Size> *) (parent->head + link.position)); | 730 | 387k | assert (0 == off); | 731 | 0 | check_assign (off, offset, HB_SERIALIZE_ERROR_OFFSET_OVERFLOW); | 732 | 387k | } |
|
733 | | |
734 | | public: |
735 | | char *start, *head, *tail, *end, *zerocopy; |
736 | | unsigned int debug_depth; |
737 | | hb_serialize_error_t errors; |
738 | | |
739 | | private: |
740 | | |
741 | 183k | void merge_virtual_links (const object_t* from, objidx_t to_idx) { |
742 | 183k | object_t* to = packed[to_idx]; |
743 | 183k | for (const auto& l : from->virtual_links) { |
744 | 0 | to->virtual_links.push (l); |
745 | 0 | } |
746 | 183k | } |
747 | | |
748 | | /* Object memory pool. */ |
749 | | hb_pool_t<object_t> object_pool; |
750 | | |
751 | | /* Stack of currently under construction objects. */ |
752 | | object_t *current; |
753 | | |
754 | | /* Stack of packed objects. Object 0 is always nil object. */ |
755 | | hb_vector_t<object_t *> packed; |
756 | | |
757 | | /* Map view of packed objects. */ |
758 | | hb_hashmap_t<const object_t *, objidx_t> packed_map; |
759 | | }; |
760 | | |
761 | | #endif /* HB_SERIALIZE_HH */ |