/work/obj-fuzz/dist/include/js/Class.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- |
2 | | * vim: set ts=8 sts=4 et sw=4 tw=99: |
3 | | * This Source Code Form is subject to the terms of the Mozilla Public |
4 | | * License, v. 2.0. If a copy of the MPL was not distributed with this |
5 | | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
6 | | |
7 | | /* JSClass definition and its component types, plus related interfaces. */ |
8 | | |
9 | | #ifndef js_Class_h |
10 | | #define js_Class_h |
11 | | |
12 | | #include "mozilla/Attributes.h" |
13 | | |
14 | | #include "jstypes.h" |
15 | | |
16 | | #include "js/CallArgs.h" |
17 | | #include "js/Id.h" |
18 | | #include "js/TypeDecls.h" |
19 | | |
20 | | /* |
21 | | * A JSClass acts as a vtable for JS objects that allows JSAPI clients to |
22 | | * control various aspects of the behavior of an object like property lookup. |
23 | | * js::Class is an engine-private extension that allows more control over |
24 | | * object behavior and, e.g., allows custom slow layout. |
25 | | */ |
26 | | |
27 | | struct JSAtomState; |
28 | | struct JSFreeOp; |
29 | | struct JSFunctionSpec; |
30 | | |
31 | | namespace js { |
32 | | |
33 | | struct Class; |
34 | | class FreeOp; |
35 | | class Shape; |
36 | | |
37 | | // This is equal to JSFunction::class_. Use it in places where you don't want |
38 | | // to #include jsfun.h. |
39 | | extern JS_FRIEND_DATA(const js::Class* const) FunctionClassPtr; |
40 | | |
41 | | } // namespace js |
42 | | |
43 | | namespace JS { |
44 | | |
45 | | /** |
46 | | * The answer to a successful query as to whether an object is an Array per |
47 | | * ES6's internal |IsArray| operation (as exposed by |Array.isArray|). |
48 | | */ |
49 | | enum class IsArrayAnswer |
50 | | { |
51 | | Array, |
52 | | NotArray, |
53 | | RevokedProxy |
54 | | }; |
55 | | |
56 | | /** |
57 | | * ES6 7.2.2. |
58 | | * |
59 | | * Returns false on failure, otherwise returns true and sets |*isArray| |
60 | | * indicating whether the object passes ECMAScript's IsArray test. This is the |
61 | | * same test performed by |Array.isArray|. |
62 | | * |
63 | | * This is NOT the same as asking whether |obj| is an Array or a wrapper around |
64 | | * one. If |obj| is a proxy created by |Proxy.revocable()| and has been |
65 | | * revoked, or if |obj| is a proxy whose target (at any number of hops) is a |
66 | | * revoked proxy, this method throws a TypeError and returns false. |
67 | | */ |
68 | | extern JS_PUBLIC_API(bool) |
69 | | IsArray(JSContext* cx, HandleObject obj, bool* isArray); |
70 | | |
71 | | /** |
72 | | * Identical to IsArray above, but the nature of the object (if successfully |
73 | | * determined) is communicated via |*answer|. In particular this method |
74 | | * returns true and sets |*answer = IsArrayAnswer::RevokedProxy| when called on |
75 | | * a revoked proxy. |
76 | | * |
77 | | * Most users will want the overload above, not this one. |
78 | | */ |
79 | | extern JS_PUBLIC_API(bool) |
80 | | IsArray(JSContext* cx, HandleObject obj, IsArrayAnswer* answer); |
81 | | |
82 | | /** |
83 | | * Per ES6, the [[DefineOwnProperty]] internal method has three different |
84 | | * possible outcomes: |
85 | | * |
86 | | * - It can throw an exception (which we indicate by returning false). |
87 | | * |
88 | | * - It can return true, indicating unvarnished success. |
89 | | * |
90 | | * - It can return false, indicating "strict failure". The property could |
91 | | * not be defined. It's an error, but no exception was thrown. |
92 | | * |
93 | | * It's not just [[DefineOwnProperty]]: all the mutating internal methods have |
94 | | * the same three outcomes. (The other affected internal methods are [[Set]], |
95 | | * [[Delete]], [[SetPrototypeOf]], and [[PreventExtensions]].) |
96 | | * |
97 | | * If you think this design is awful, you're not alone. But as it's the |
98 | | * standard, we must represent these boolean "success" values somehow. |
99 | | * ObjectOpSuccess is the class for this. It's like a bool, but when it's false |
100 | | * it also stores an error code. |
101 | | * |
102 | | * Typical usage: |
103 | | * |
104 | | * ObjectOpResult result; |
105 | | * if (!DefineProperty(cx, obj, id, ..., result)) |
106 | | * return false; |
107 | | * if (!result) |
108 | | * return result.reportError(cx, obj, id); |
109 | | * |
110 | | * Users don't have to call `result.report()`; another possible ending is: |
111 | | * |
112 | | * argv.rval().setBoolean(result.reallyOk()); |
113 | | * return true; |
114 | | */ |
115 | | class ObjectOpResult |
116 | | { |
117 | | private: |
118 | | /** |
119 | | * code_ is either one of the special codes OkCode or Uninitialized, or |
120 | | * an error code. For now the error codes are private to the JS engine; |
121 | | * they're defined in js/src/js.msg. |
122 | | * |
123 | | * code_ is uintptr_t (rather than uint32_t) for the convenience of the |
124 | | * JITs, which would otherwise have to deal with either padding or stack |
125 | | * alignment on 64-bit platforms. |
126 | | */ |
127 | | uintptr_t code_; |
128 | | |
129 | | public: |
130 | | enum SpecialCodes : uintptr_t { |
131 | | OkCode = 0, |
132 | | Uninitialized = uintptr_t(-1) |
133 | | }; |
134 | | |
135 | | static const uintptr_t SoftFailBit = uintptr_t(1) << (sizeof(uintptr_t) * 8 - 1); |
136 | | |
137 | 3.25M | ObjectOpResult() : code_(Uninitialized) {} |
138 | | |
139 | | /* Return true if succeed() or failSoft() was called. */ |
140 | 3.25M | bool ok() const { |
141 | 3.25M | MOZ_ASSERT(code_ != Uninitialized); |
142 | 3.25M | return code_ == OkCode || (code_ & SoftFailBit); |
143 | 3.25M | } |
144 | | |
145 | 3.25M | explicit operator bool() const { return ok(); } |
146 | | |
147 | | /* Return true if succeed() was called. */ |
148 | 48 | bool reallyOk() const { |
149 | 48 | MOZ_ASSERT(code_ != Uninitialized); |
150 | 48 | return code_ == OkCode; |
151 | 48 | } |
152 | | |
153 | | /* Set this ObjectOpResult to true and return true. */ |
154 | 3.25M | bool succeed() { |
155 | 3.25M | code_ = OkCode; |
156 | 3.25M | return true; |
157 | 3.25M | } |
158 | | |
159 | | /* |
160 | | * Set this ObjectOpResult to false with an error code. |
161 | | * |
162 | | * Always returns true, as a convenience. Typical usage will be: |
163 | | * |
164 | | * if (funny condition) |
165 | | * return result.fail(JSMSG_CANT_DO_THE_THINGS); |
166 | | * |
167 | | * The true return value indicates that no exception is pending, and it |
168 | | * would be OK to ignore the failure and continue. |
169 | | */ |
170 | 0 | bool fail(uint32_t msg) { |
171 | 0 | MOZ_ASSERT(msg != OkCode); |
172 | 0 | MOZ_ASSERT((msg & SoftFailBit) == 0); |
173 | 0 | code_ = msg; |
174 | 0 | return true; |
175 | 0 | } |
176 | | |
177 | | /* |
178 | | * DEPRECATED: This is a non-standard compatibility hack. |
179 | | * |
180 | | * Set this ObjectOpResult to true, but remembers an error code. |
181 | | * This is used for situations where we really want to fail, |
182 | | * but can't for legacy reasons. |
183 | | * |
184 | | * Always returns true, as a convenience. |
185 | | */ |
186 | 0 | bool failSoft(uint32_t msg) { |
187 | 0 | // The msg code is currently never extracted again. |
188 | 0 | code_ = msg | SoftFailBit; |
189 | 0 | return true; |
190 | 0 | } |
191 | | |
192 | | JS_PUBLIC_API(bool) failCantRedefineProp(); |
193 | | JS_PUBLIC_API(bool) failReadOnly(); |
194 | | JS_PUBLIC_API(bool) failGetterOnly(); |
195 | | JS_PUBLIC_API(bool) failCantDelete(); |
196 | | |
197 | | JS_PUBLIC_API(bool) failCantSetInterposed(); |
198 | | JS_PUBLIC_API(bool) failCantDefineWindowElement(); |
199 | | JS_PUBLIC_API(bool) failCantDeleteWindowElement(); |
200 | | JS_PUBLIC_API(bool) failCantDeleteWindowNamedProperty(); |
201 | | JS_PUBLIC_API(bool) failCantPreventExtensions(); |
202 | | JS_PUBLIC_API(bool) failCantSetProto(); |
203 | | JS_PUBLIC_API(bool) failNoNamedSetter(); |
204 | | JS_PUBLIC_API(bool) failNoIndexedSetter(); |
205 | | JS_PUBLIC_API(bool) failNotDataDescriptor(); |
206 | | |
207 | 0 | uint32_t failureCode() const { |
208 | 0 | MOZ_ASSERT(!ok()); |
209 | 0 | return uint32_t(code_); |
210 | 0 | } |
211 | | |
212 | | /* |
213 | | * Report an error or warning if necessary; return true to proceed and |
214 | | * false if an error was reported. Call this when failure should cause |
215 | | * a warning if extraWarnings are enabled. |
216 | | * |
217 | | * The precise rules are like this: |
218 | | * |
219 | | * - If ok(), then we succeeded. Do nothing and return true. |
220 | | * - Otherwise, if |strict| is true, or if cx has both extraWarnings and |
221 | | * werrorOption enabled, throw a TypeError and return false. |
222 | | * - Otherwise, if cx has extraWarnings enabled, emit a warning and |
223 | | * return true. |
224 | | * - Otherwise, do nothing and return true. |
225 | | */ |
226 | 154 | bool checkStrictErrorOrWarning(JSContext* cx, HandleObject obj, HandleId id, bool strict) { |
227 | 154 | if (ok()) { |
228 | 154 | return true; |
229 | 154 | } |
230 | 0 | return reportStrictErrorOrWarning(cx, obj, id, strict); |
231 | 0 | } |
232 | | |
233 | | /* |
234 | | * The same as checkStrictErrorOrWarning(cx, id, strict), except the |
235 | | * operation is not associated with a particular property id. This is |
236 | | * used for [[PreventExtensions]] and [[SetPrototypeOf]]. failureCode() |
237 | | * must not be an error that has "{0}" in the error message. |
238 | | */ |
239 | 7 | bool checkStrictErrorOrWarning(JSContext* cx, HandleObject obj, bool strict) { |
240 | 7 | return ok() || reportStrictErrorOrWarning(cx, obj, strict); |
241 | 7 | } |
242 | | |
243 | | /* Throw a TypeError. Call this only if !ok(). */ |
244 | 0 | bool reportError(JSContext* cx, HandleObject obj, HandleId id) { |
245 | 0 | return reportStrictErrorOrWarning(cx, obj, id, true); |
246 | 0 | } |
247 | | |
248 | | /* |
249 | | * The same as reportError(cx, obj, id), except the operation is not |
250 | | * associated with a particular property id. |
251 | | */ |
252 | 0 | bool reportError(JSContext* cx, HandleObject obj) { |
253 | 0 | return reportStrictErrorOrWarning(cx, obj, true); |
254 | 0 | } |
255 | | |
256 | | /* Helper function for checkStrictErrorOrWarning's slow path. */ |
257 | | JS_PUBLIC_API(bool) reportStrictErrorOrWarning(JSContext* cx, HandleObject obj, HandleId id, bool strict); |
258 | | JS_PUBLIC_API(bool) reportStrictErrorOrWarning(JSContext* cx, HandleObject obj, bool strict); |
259 | | |
260 | | /* |
261 | | * Convenience method. Return true if ok() or if strict is false; otherwise |
262 | | * throw a TypeError and return false. |
263 | | */ |
264 | 123 | bool checkStrict(JSContext* cx, HandleObject obj, HandleId id) { |
265 | 123 | return checkStrictErrorOrWarning(cx, obj, id, true); |
266 | 123 | } |
267 | | |
268 | | /* |
269 | | * Convenience method. The same as checkStrict(cx, id), except the |
270 | | * operation is not associated with a particular property id. |
271 | | */ |
272 | 7 | bool checkStrict(JSContext* cx, HandleObject obj) { |
273 | 7 | return checkStrictErrorOrWarning(cx, obj, true); |
274 | 7 | } |
275 | | }; |
276 | | |
277 | | class PropertyResult |
278 | | { |
279 | | union { |
280 | | js::Shape* shape_; |
281 | | uintptr_t bits_; |
282 | | }; |
283 | | |
284 | | static const uintptr_t NotFound = 0; |
285 | | static const uintptr_t NonNativeProperty = 1; |
286 | | static const uintptr_t DenseOrTypedArrayElement = 1; |
287 | | |
288 | | public: |
289 | 13.5M | PropertyResult() : bits_(NotFound) {} |
290 | | |
291 | | explicit PropertyResult(js::Shape* propertyShape) |
292 | | : shape_(propertyShape) |
293 | 0 | { |
294 | 0 | MOZ_ASSERT(!isFound() || isNativeProperty()); |
295 | 0 | } |
296 | | |
297 | 37.9M | explicit operator bool() const { |
298 | 37.9M | return isFound(); |
299 | 37.9M | } |
300 | | |
301 | 37.9M | bool isFound() const { |
302 | 37.9M | return bits_ != NotFound; |
303 | 37.9M | } |
304 | | |
305 | 9 | bool isNonNativeProperty() const { |
306 | 9 | return bits_ == NonNativeProperty; |
307 | 9 | } |
308 | | |
309 | 7.08M | bool isDenseOrTypedArrayElement() const { |
310 | 7.08M | return bits_ == DenseOrTypedArrayElement; |
311 | 7.08M | } |
312 | | |
313 | 14 | bool isNativeProperty() const { |
314 | 14 | return isFound() && !isNonNativeProperty(); |
315 | 14 | } |
316 | | |
317 | 95 | js::Shape* maybeShape() const { |
318 | 95 | MOZ_ASSERT(!isNonNativeProperty()); |
319 | 95 | return isFound() ? shape_ : nullptr; |
320 | 95 | } |
321 | | |
322 | 10.3M | js::Shape* shape() const { |
323 | 10.3M | MOZ_ASSERT(isNativeProperty()); |
324 | 10.3M | return shape_; |
325 | 10.3M | } |
326 | | |
327 | 25.9M | void setNotFound() { |
328 | 25.9M | bits_ = NotFound; |
329 | 25.9M | } |
330 | | |
331 | 10.3M | void setNativeProperty(js::Shape* propertyShape) { |
332 | 10.3M | shape_ = propertyShape; |
333 | 10.3M | MOZ_ASSERT(isNativeProperty()); |
334 | 10.3M | } |
335 | | |
336 | 6 | void setNonNativeProperty() { |
337 | 6 | bits_ = NonNativeProperty; |
338 | 6 | } |
339 | | |
340 | 36 | void setDenseOrTypedArrayElement() { |
341 | 36 | bits_ = DenseOrTypedArrayElement; |
342 | 36 | } |
343 | | |
344 | | void trace(JSTracer* trc); |
345 | | }; |
346 | | |
347 | | } // namespace JS |
348 | | |
349 | | namespace js { |
350 | | |
351 | | template <class Wrapper> |
352 | | class WrappedPtrOperations<JS::PropertyResult, Wrapper> |
353 | | { |
354 | 55.2M | const JS::PropertyResult& value() const { return static_cast<const Wrapper*>(this)->get(); } js::WrappedPtrOperations<JS::PropertyResult, JS::Handle<JS::PropertyResult> >::value() const Line | Count | Source | 354 | 6.43M | const JS::PropertyResult& value() const { return static_cast<const Wrapper*>(this)->get(); } |
js::WrappedPtrOperations<JS::PropertyResult, JS::Rooted<JS::PropertyResult> >::value() const Line | Count | Source | 354 | 27.7M | const JS::PropertyResult& value() const { return static_cast<const Wrapper*>(this)->get(); } |
js::WrappedPtrOperations<JS::PropertyResult, JS::MutableHandle<JS::PropertyResult> >::value() const Line | Count | Source | 354 | 20.9M | const JS::PropertyResult& value() const { return static_cast<const Wrapper*>(this)->get(); } |
js::WrappedPtrOperations<JS::PropertyResult, js::FakeMutableHandle<JS::PropertyResult> >::value() const Line | Count | Source | 354 | 28.2k | const JS::PropertyResult& value() const { return static_cast<const Wrapper*>(this)->get(); } |
js::WrappedPtrOperations<JS::PropertyResult, js::FakeRooted<JS::PropertyResult> >::value() const Line | Count | Source | 354 | 70 | const JS::PropertyResult& value() const { return static_cast<const Wrapper*>(this)->get(); } |
|
355 | | |
356 | | public: |
357 | 11 | bool isFound() const { return value().isFound(); } |
358 | 37.8M | explicit operator bool() const { return bool(value()); } js::WrappedPtrOperations<JS::PropertyResult, JS::Rooted<JS::PropertyResult> >::operator bool() const Line | Count | Source | 358 | 13.5M | explicit operator bool() const { return bool(value()); } |
js::WrappedPtrOperations<JS::PropertyResult, JS::Handle<JS::PropertyResult> >::operator bool() const Line | Count | Source | 358 | 3.21M | explicit operator bool() const { return bool(value()); } |
js::WrappedPtrOperations<JS::PropertyResult, JS::MutableHandle<JS::PropertyResult> >::operator bool() const Line | Count | Source | 358 | 20.9M | explicit operator bool() const { return bool(value()); } |
js::WrappedPtrOperations<JS::PropertyResult, js::FakeMutableHandle<JS::PropertyResult> >::operator bool() const Line | Count | Source | 358 | 28.2k | explicit operator bool() const { return bool(value()); } |
js::WrappedPtrOperations<JS::PropertyResult, js::FakeRooted<JS::PropertyResult> >::operator bool() const Line | Count | Source | 358 | 36 | explicit operator bool() const { return bool(value()); } |
|
359 | | js::Shape* maybeShape() const { return value().maybeShape(); } |
360 | 10.3M | js::Shape* shape() const { return value().shape(); } js::WrappedPtrOperations<JS::PropertyResult, JS::Handle<JS::PropertyResult> >::shape() const Line | Count | Source | 360 | 3.21M | js::Shape* shape() const { return value().shape(); } |
js::WrappedPtrOperations<JS::PropertyResult, JS::Rooted<JS::PropertyResult> >::shape() const Line | Count | Source | 360 | 7.08M | js::Shape* shape() const { return value().shape(); } |
js::WrappedPtrOperations<JS::PropertyResult, js::FakeRooted<JS::PropertyResult> >::shape() const Line | Count | Source | 360 | 1 | js::Shape* shape() const { return value().shape(); } |
|
361 | | bool isNativeProperty() const { return value().isNativeProperty(); } |
362 | 0 | bool isNonNativeProperty() const { return value().isNonNativeProperty(); } |
363 | 7.08M | bool isDenseOrTypedArrayElement() const { return value().isDenseOrTypedArrayElement(); } js::WrappedPtrOperations<JS::PropertyResult, JS::Handle<JS::PropertyResult> >::isDenseOrTypedArrayElement() const Line | Count | Source | 363 | 297 | bool isDenseOrTypedArrayElement() const { return value().isDenseOrTypedArrayElement(); } |
js::WrappedPtrOperations<JS::PropertyResult, JS::Rooted<JS::PropertyResult> >::isDenseOrTypedArrayElement() const Line | Count | Source | 363 | 7.08M | bool isDenseOrTypedArrayElement() const { return value().isDenseOrTypedArrayElement(); } |
js::WrappedPtrOperations<JS::PropertyResult, js::FakeRooted<JS::PropertyResult> >::isDenseOrTypedArrayElement() const Line | Count | Source | 363 | 33 | bool isDenseOrTypedArrayElement() const { return value().isDenseOrTypedArrayElement(); } |
|
364 | | js::Shape* asTaggedShape() const { return value().asTaggedShape(); } |
365 | | }; |
366 | | |
367 | | template <class Wrapper> |
368 | | class MutableWrappedPtrOperations<JS::PropertyResult, Wrapper> |
369 | | : public WrappedPtrOperations<JS::PropertyResult, Wrapper> |
370 | | { |
371 | 36.3M | JS::PropertyResult& value() { return static_cast<Wrapper*>(this)->get(); } js::MutableWrappedPtrOperations<JS::PropertyResult, JS::MutableHandle<JS::PropertyResult> >::value() Line | Count | Source | 371 | 36.1M | JS::PropertyResult& value() { return static_cast<Wrapper*>(this)->get(); } |
js::MutableWrappedPtrOperations<JS::PropertyResult, js::FakeMutableHandle<JS::PropertyResult> >::value() Line | Count | Source | 371 | 197k | JS::PropertyResult& value() { return static_cast<Wrapper*>(this)->get(); } |
|
372 | | |
373 | | public: |
374 | 25.9M | void setNotFound() { |
375 | 25.9M | value().setNotFound(); |
376 | 25.9M | } js::MutableWrappedPtrOperations<JS::PropertyResult, JS::MutableHandle<JS::PropertyResult> >::setNotFound() Line | Count | Source | 374 | 25.8M | void setNotFound() { | 375 | 25.8M | value().setNotFound(); | 376 | 25.8M | } |
js::MutableWrappedPtrOperations<JS::PropertyResult, js::FakeMutableHandle<JS::PropertyResult> >::setNotFound() Line | Count | Source | 374 | 169k | void setNotFound() { | 375 | 169k | value().setNotFound(); | 376 | 169k | } |
|
377 | 10.3M | void setNativeProperty(js::Shape* shape) { |
378 | 10.3M | value().setNativeProperty(shape); |
379 | 10.3M | } js::MutableWrappedPtrOperations<JS::PropertyResult, JS::MutableHandle<JS::PropertyResult> >::setNativeProperty(js::Shape*) Line | Count | Source | 377 | 10.3M | void setNativeProperty(js::Shape* shape) { | 378 | 10.3M | value().setNativeProperty(shape); | 379 | 10.3M | } |
js::MutableWrappedPtrOperations<JS::PropertyResult, js::FakeMutableHandle<JS::PropertyResult> >::setNativeProperty(js::Shape*) Line | Count | Source | 377 | 28.2k | void setNativeProperty(js::Shape* shape) { | 378 | 28.2k | value().setNativeProperty(shape); | 379 | 28.2k | } |
|
380 | 0 | void setNonNativeProperty() { |
381 | 0 | value().setNonNativeProperty(); |
382 | 0 | } |
383 | 36 | void setDenseOrTypedArrayElement() { |
384 | 36 | value().setDenseOrTypedArrayElement(); |
385 | 36 | } js::MutableWrappedPtrOperations<JS::PropertyResult, JS::MutableHandle<JS::PropertyResult> >::setDenseOrTypedArrayElement() Line | Count | Source | 383 | 4 | void setDenseOrTypedArrayElement() { | 384 | 4 | value().setDenseOrTypedArrayElement(); | 385 | 4 | } |
js::MutableWrappedPtrOperations<JS::PropertyResult, js::FakeMutableHandle<JS::PropertyResult> >::setDenseOrTypedArrayElement() Line | Count | Source | 383 | 32 | void setDenseOrTypedArrayElement() { | 384 | 32 | value().setDenseOrTypedArrayElement(); | 385 | 32 | } |
|
386 | | }; |
387 | | |
388 | | } // namespace js |
389 | | |
390 | | // JSClass operation signatures. |
391 | | |
392 | | /** |
393 | | * Get a property named by id in obj. Note the jsid id type -- id may |
394 | | * be a string (Unicode property identifier) or an int (element index). The |
395 | | * *vp out parameter, on success, is the new property value after the action. |
396 | | */ |
397 | | typedef bool |
398 | | (* JSGetterOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
399 | | JS::MutableHandleValue vp); |
400 | | |
401 | | /** Add a property named by id to obj. */ |
402 | | typedef bool |
403 | | (* JSAddPropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, JS::HandleValue v); |
404 | | |
405 | | /** |
406 | | * Set a property named by id in obj, treating the assignment as strict |
407 | | * mode code if strict is true. Note the jsid id type -- id may be a string |
408 | | * (Unicode property identifier) or an int (element index). |
409 | | */ |
410 | | typedef bool |
411 | | (* JSSetterOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
412 | | JS::HandleValue v, JS::ObjectOpResult& result); |
413 | | |
414 | | /** |
415 | | * Delete a property named by id in obj. |
416 | | * |
417 | | * If an error occurred, return false as per normal JSAPI error practice. |
418 | | * |
419 | | * If no error occurred, but the deletion attempt wasn't allowed (perhaps |
420 | | * because the property was non-configurable), call result.fail() and |
421 | | * return true. This will cause |delete obj[id]| to evaluate to false in |
422 | | * non-strict mode code, and to throw a TypeError in strict mode code. |
423 | | * |
424 | | * If no error occurred and the deletion wasn't disallowed (this is *not* the |
425 | | * same as saying that a deletion actually occurred -- deleting a non-existent |
426 | | * property, or an inherited property, is allowed -- it's just pointless), |
427 | | * call result.succeed() and return true. |
428 | | */ |
429 | | typedef bool |
430 | | (* JSDeletePropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
431 | | JS::ObjectOpResult& result); |
432 | | |
433 | | /** |
434 | | * The type of ObjectOps::enumerate. This callback overrides a portion of |
435 | | * SpiderMonkey's default [[Enumerate]] internal method. When an ordinary object |
436 | | * is enumerated, that object and each object on its prototype chain is tested |
437 | | * for an enumerate op, and those ops are called in order. The properties each |
438 | | * op adds to the 'properties' vector are added to the set of values the for-in |
439 | | * loop will iterate over. All of this is nonstandard. |
440 | | * |
441 | | * An object is "enumerated" when it's the target of a for-in loop or |
442 | | * JS_Enumerate(). The callback's job is to populate 'properties' with the |
443 | | * object's property keys. If `enumerableOnly` is true, the callback should only |
444 | | * add enumerable properties. |
445 | | */ |
446 | | typedef bool |
447 | | (* JSNewEnumerateOp)(JSContext* cx, JS::HandleObject obj, JS::AutoIdVector& properties, |
448 | | bool enumerableOnly); |
449 | | |
450 | | /** |
451 | | * The old-style JSClass.enumerate op should define all lazy properties not |
452 | | * yet reflected in obj. |
453 | | */ |
454 | | typedef bool |
455 | | (* JSEnumerateOp)(JSContext* cx, JS::HandleObject obj); |
456 | | |
457 | | /** |
458 | | * The type of ObjectOps::funToString. This callback allows an object to |
459 | | * provide a custom string to use when Function.prototype.toString is invoked on |
460 | | * that object. A null return value means OOM. |
461 | | */ |
462 | | typedef JSString* |
463 | | (* JSFunToStringOp)(JSContext* cx, JS::HandleObject obj, bool isToSource); |
464 | | |
465 | | /** |
466 | | * Resolve a lazy property named by id in obj by defining it directly in obj. |
467 | | * Lazy properties are those reflected from some peer native property space |
468 | | * (e.g., the DOM attributes for a given node reflected as obj) on demand. |
469 | | * |
470 | | * JS looks for a property in an object, and if not found, tries to resolve |
471 | | * the given id. *resolvedp should be set to true iff the property was defined |
472 | | * on |obj|. |
473 | | */ |
474 | | typedef bool |
475 | | (* JSResolveOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
476 | | bool* resolvedp); |
477 | | |
478 | | /** |
479 | | * A class with a resolve hook can optionally have a mayResolve hook. This hook |
480 | | * must have no side effects and must return true for a given id if the resolve |
481 | | * hook may resolve this id. This is useful when we're doing a "pure" lookup: if |
482 | | * mayResolve returns false, we know we don't have to call the effectful resolve |
483 | | * hook. |
484 | | * |
485 | | * maybeObj, if non-null, is the object on which we're doing the lookup. This |
486 | | * can be nullptr: during JIT compilation we sometimes know the Class but not |
487 | | * the object. |
488 | | */ |
489 | | typedef bool |
490 | | (* JSMayResolveOp)(const JSAtomState& names, jsid id, JSObject* maybeObj); |
491 | | |
492 | | /** |
493 | | * Finalize obj, which the garbage collector has determined to be unreachable |
494 | | * from other live objects or from GC roots. Obviously, finalizers must never |
495 | | * store a reference to obj. |
496 | | */ |
497 | | typedef void |
498 | | (* JSFinalizeOp)(JSFreeOp* fop, JSObject* obj); |
499 | | |
500 | | /** |
501 | | * Check whether v is an instance of obj. Return false on error or exception, |
502 | | * true on success with true in *bp if v is an instance of obj, false in |
503 | | * *bp otherwise. |
504 | | */ |
505 | | typedef bool |
506 | | (* JSHasInstanceOp)(JSContext* cx, JS::HandleObject obj, JS::MutableHandleValue vp, |
507 | | bool* bp); |
508 | | |
509 | | /** |
510 | | * Function type for trace operation of the class called to enumerate all |
511 | | * traceable things reachable from obj's private data structure. For each such |
512 | | * thing, a trace implementation must call JS::TraceEdge on the thing's |
513 | | * location. |
514 | | * |
515 | | * JSTraceOp implementation can assume that no other threads mutates object |
516 | | * state. It must not change state of the object or corresponding native |
517 | | * structures. The only exception for this rule is the case when the embedding |
518 | | * needs a tight integration with GC. In that case the embedding can check if |
519 | | * the traversal is a part of the marking phase through calling |
520 | | * JS_IsGCMarkingTracer and apply a special code like emptying caches or |
521 | | * marking its native structures. |
522 | | */ |
523 | | typedef void |
524 | | (* JSTraceOp)(JSTracer* trc, JSObject* obj); |
525 | | |
526 | | typedef JSObject* |
527 | | (* JSWeakmapKeyDelegateOp)(JSObject* obj); |
528 | | |
529 | | typedef size_t |
530 | | (* JSObjectMovedOp)(JSObject* obj, JSObject* old); |
531 | | |
532 | | /* js::Class operation signatures. */ |
533 | | |
534 | | namespace js { |
535 | | |
536 | | typedef bool |
537 | | (* LookupPropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
538 | | JS::MutableHandleObject objp, JS::MutableHandle<JS::PropertyResult> propp); |
539 | | typedef bool |
540 | | (* DefinePropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
541 | | JS::Handle<JS::PropertyDescriptor> desc, |
542 | | JS::ObjectOpResult& result); |
543 | | typedef bool |
544 | | (* HasPropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, bool* foundp); |
545 | | typedef bool |
546 | | (* GetPropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleValue receiver, JS::HandleId id, |
547 | | JS::MutableHandleValue vp); |
548 | | typedef bool |
549 | | (* SetPropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, JS::HandleValue v, |
550 | | JS::HandleValue receiver, JS::ObjectOpResult& result); |
551 | | typedef bool |
552 | | (* GetOwnPropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
553 | | JS::MutableHandle<JS::PropertyDescriptor> desc); |
554 | | typedef bool |
555 | | (* DeletePropertyOp)(JSContext* cx, JS::HandleObject obj, JS::HandleId id, |
556 | | JS::ObjectOpResult& result); |
557 | | |
558 | | class JS_FRIEND_API(ElementAdder) |
559 | | { |
560 | | public: |
561 | | enum GetBehavior { |
562 | | // Check if the element exists before performing the Get and preserve |
563 | | // holes. |
564 | | CheckHasElemPreserveHoles, |
565 | | |
566 | | // Perform a Get operation, like obj[index] in JS. |
567 | | GetElement |
568 | | }; |
569 | | |
570 | | private: |
571 | | // Only one of these is used. |
572 | | JS::RootedObject resObj_; |
573 | | JS::Value* vp_; |
574 | | |
575 | | uint32_t index_; |
576 | | #ifdef DEBUG |
577 | | uint32_t length_; |
578 | | #endif |
579 | | GetBehavior getBehavior_; |
580 | | |
581 | | public: |
582 | | ElementAdder(JSContext* cx, JSObject* obj, uint32_t length, GetBehavior behavior) |
583 | | : resObj_(cx, obj), vp_(nullptr), index_(0), |
584 | | #ifdef DEBUG |
585 | | length_(length), |
586 | | #endif |
587 | | getBehavior_(behavior) |
588 | 0 | {} |
589 | | ElementAdder(JSContext* cx, JS::Value* vp, uint32_t length, GetBehavior behavior) |
590 | | : resObj_(cx), vp_(vp), index_(0), |
591 | | #ifdef DEBUG |
592 | | length_(length), |
593 | | #endif |
594 | | getBehavior_(behavior) |
595 | 0 | {} |
596 | | |
597 | 0 | GetBehavior getBehavior() const { return getBehavior_; } |
598 | | |
599 | | bool append(JSContext* cx, JS::HandleValue v); |
600 | | void appendHole(); |
601 | | }; |
602 | | |
603 | | typedef bool |
604 | | (* GetElementsOp)(JSContext* cx, JS::HandleObject obj, uint32_t begin, uint32_t end, |
605 | | ElementAdder* adder); |
606 | | |
607 | | typedef void |
608 | | (* FinalizeOp)(FreeOp* fop, JSObject* obj); |
609 | | |
610 | | // The special treatment of |finalize| and |trace| is necessary because if we |
611 | | // assign either of those hooks to a local variable and then call it -- as is |
612 | | // done with the other hooks -- the GC hazard analysis gets confused. |
613 | | #define JS_CLASS_MEMBERS(ClassOpsType, FreeOpType) \ |
614 | | const char* name; \ |
615 | | uint32_t flags; \ |
616 | | const ClassOpsType* cOps; \ |
617 | | \ |
618 | 3.25M | JSAddPropertyOp getAddProperty() const { return cOps ? cOps->addProperty : nullptr; } \ Unexecuted instantiation: JSClass::getAddProperty() const js::Class::getAddProperty() const Line | Count | Source | 618 | 3.25M | JSAddPropertyOp getAddProperty() const { return cOps ? cOps->addProperty : nullptr; } \ |
|
619 | 0 | JSDeletePropertyOp getDelProperty() const { return cOps ? cOps->delProperty : nullptr; } \ Unexecuted instantiation: JSClass::getDelProperty() const Unexecuted instantiation: js::Class::getDelProperty() const |
620 | 10 | JSEnumerateOp getEnumerate() const { return cOps ? cOps->enumerate : nullptr; } \ Unexecuted instantiation: JSClass::getEnumerate() const js::Class::getEnumerate() const Line | Count | Source | 620 | 10 | JSEnumerateOp getEnumerate() const { return cOps ? cOps->enumerate : nullptr; } \ |
|
621 | 10 | JSNewEnumerateOp getNewEnumerate()const { return cOps ? cOps->newEnumerate: nullptr; } \ Unexecuted instantiation: JSClass::getNewEnumerate() const js::Class::getNewEnumerate() const Line | Count | Source | 621 | 10 | JSNewEnumerateOp getNewEnumerate()const { return cOps ? cOps->newEnumerate: nullptr; } \ |
|
622 | 21.1M | JSResolveOp getResolve() const { return cOps ? cOps->resolve : nullptr; } \ Unexecuted instantiation: JSClass::getResolve() const js::Class::getResolve() const Line | Count | Source | 622 | 21.1M | JSResolveOp getResolve() const { return cOps ? cOps->resolve : nullptr; } \ |
|
623 | 724 | JSMayResolveOp getMayResolve() const { return cOps ? cOps->mayResolve : nullptr; } \ Unexecuted instantiation: JSClass::getMayResolve() const js::Class::getMayResolve() const Line | Count | Source | 623 | 724 | JSMayResolveOp getMayResolve() const { return cOps ? cOps->mayResolve : nullptr; } \ |
|
624 | 6 | JSNative getCall() const { return cOps ? cOps->call : nullptr; } \ Unexecuted instantiation: JSClass::getCall() const js::Class::getCall() const Line | Count | Source | 624 | 6 | JSNative getCall() const { return cOps ? cOps->call : nullptr; } \ |
|
625 | 1 | JSHasInstanceOp getHasInstance() const { return cOps ? cOps->hasInstance : nullptr; } \ Unexecuted instantiation: JSClass::getHasInstance() const js::Class::getHasInstance() const Line | Count | Source | 625 | 1 | JSHasInstanceOp getHasInstance() const { return cOps ? cOps->hasInstance : nullptr; } \ |
|
626 | 0 | JSNative getConstruct() const { return cOps ? cOps->construct : nullptr; } \ Unexecuted instantiation: JSClass::getConstruct() const Unexecuted instantiation: js::Class::getConstruct() const |
627 | | \ |
628 | 15.9M | bool hasFinalize() const { return cOps && cOps->finalize; } \ Unexecuted instantiation: JSClass::hasFinalize() const js::Class::hasFinalize() const Line | Count | Source | 628 | 15.9M | bool hasFinalize() const { return cOps && cOps->finalize; } \ |
|
629 | 12.8k | bool hasTrace() const { return cOps && cOps->trace; } \ Unexecuted instantiation: JSClass::hasTrace() const js::Class::hasTrace() const Line | Count | Source | 629 | 12.8k | bool hasTrace() const { return cOps && cOps->trace; } \ |
|
630 | | \ |
631 | 8.73k | bool isTrace(JSTraceOp trace) const { return cOps && cOps->trace == trace; } \ Unexecuted instantiation: JSClass::isTrace(void (*)(JSTracer*, JSObject*)) const js::Class::isTrace(void (*)(JSTracer*, JSObject*)) const Line | Count | Source | 631 | 8.73k | bool isTrace(JSTraceOp trace) const { return cOps && cOps->trace == trace; } \ |
|
632 | | \ |
633 | 4.66M | void doFinalize(FreeOpType* fop, JSObject* obj) const { \ |
634 | 4.66M | MOZ_ASSERT(cOps && cOps->finalize); \ |
635 | 4.66M | cOps->finalize(fop, obj); \ |
636 | 4.66M | } \ Unexecuted instantiation: JSClass::doFinalize(JSFreeOp*, JSObject*) const js::Class::doFinalize(js::FreeOp*, JSObject*) const Line | Count | Source | 633 | 4.66M | void doFinalize(FreeOpType* fop, JSObject* obj) const { \ | 634 | 4.66M | MOZ_ASSERT(cOps && cOps->finalize); \ | 635 | 4.66M | cOps->finalize(fop, obj); \ | 636 | 4.66M | } \ |
|
637 | 8.71k | void doTrace(JSTracer* trc, JSObject* obj) const { \ |
638 | 8.71k | MOZ_ASSERT(cOps && cOps->trace); \ |
639 | 8.71k | cOps->trace(trc, obj); \ |
640 | 8.71k | } Unexecuted instantiation: JSClass::doTrace(JSTracer*, JSObject*) const js::Class::doTrace(JSTracer*, JSObject*) const Line | Count | Source | 637 | 8.71k | void doTrace(JSTracer* trc, JSObject* obj) const { \ | 638 | 8.71k | MOZ_ASSERT(cOps && cOps->trace); \ | 639 | 8.71k | cOps->trace(trc, obj); \ | 640 | 8.71k | } |
|
641 | | |
642 | | struct MOZ_STATIC_CLASS ClassOps |
643 | | { |
644 | | /* Function pointer members (may be null). */ |
645 | | JSAddPropertyOp addProperty; |
646 | | JSDeletePropertyOp delProperty; |
647 | | JSEnumerateOp enumerate; |
648 | | JSNewEnumerateOp newEnumerate; |
649 | | JSResolveOp resolve; |
650 | | JSMayResolveOp mayResolve; |
651 | | FinalizeOp finalize; |
652 | | JSNative call; |
653 | | JSHasInstanceOp hasInstance; |
654 | | JSNative construct; |
655 | | JSTraceOp trace; |
656 | | }; |
657 | | |
658 | | /** Callback for the creation of constructor and prototype objects. */ |
659 | | typedef JSObject* (*ClassObjectCreationOp)(JSContext* cx, JSProtoKey key); |
660 | | |
661 | | /** Callback for custom post-processing after class initialization via ClassSpec. */ |
662 | | typedef bool (*FinishClassInitOp)(JSContext* cx, JS::HandleObject ctor, |
663 | | JS::HandleObject proto); |
664 | | |
665 | | const size_t JSCLASS_CACHED_PROTO_WIDTH = 6; |
666 | | |
667 | | struct MOZ_STATIC_CLASS ClassSpec |
668 | | { |
669 | | ClassObjectCreationOp createConstructor; |
670 | | ClassObjectCreationOp createPrototype; |
671 | | const JSFunctionSpec* constructorFunctions; |
672 | | const JSPropertySpec* constructorProperties; |
673 | | const JSFunctionSpec* prototypeFunctions; |
674 | | const JSPropertySpec* prototypeProperties; |
675 | | FinishClassInitOp finishInit; |
676 | | uintptr_t flags; |
677 | | |
678 | | static const size_t ProtoKeyWidth = JSCLASS_CACHED_PROTO_WIDTH; |
679 | | |
680 | | static const uintptr_t ProtoKeyMask = (1 << ProtoKeyWidth) - 1; |
681 | | static const uintptr_t DontDefineConstructor = 1 << ProtoKeyWidth; |
682 | | |
683 | 22 | bool defined() const { return !!createConstructor; } |
684 | | |
685 | | // The ProtoKey this class inherits from. |
686 | 3 | JSProtoKey inheritanceProtoKey() const { |
687 | 3 | MOZ_ASSERT(defined()); |
688 | 3 | static_assert(JSProto_Null == 0, "zeroed key must be null"); |
689 | 3 | |
690 | 3 | // Default: Inherit from Object. |
691 | 3 | if (!(flags & ProtoKeyMask)) { |
692 | 3 | return JSProto_Object; |
693 | 3 | } |
694 | 0 | |
695 | 0 | return JSProtoKey(flags & ProtoKeyMask); |
696 | 0 | } |
697 | | |
698 | 19 | bool shouldDefineConstructor() const { |
699 | 19 | MOZ_ASSERT(defined()); |
700 | 19 | return !(flags & DontDefineConstructor); |
701 | 19 | } |
702 | | }; |
703 | | |
704 | | struct MOZ_STATIC_CLASS ClassExtension |
705 | | { |
706 | | /** |
707 | | * If an object is used as a key in a weakmap, it may be desirable for the |
708 | | * garbage collector to keep that object around longer than it otherwise |
709 | | * would. A common case is when the key is a wrapper around an object in |
710 | | * another compartment, and we want to avoid collecting the wrapper (and |
711 | | * removing the weakmap entry) as long as the wrapped object is alive. In |
712 | | * that case, the wrapped object is returned by the wrapper's |
713 | | * weakmapKeyDelegateOp hook. As long as the wrapper is used as a weakmap |
714 | | * key, it will not be collected (and remain in the weakmap) until the |
715 | | * wrapped object is collected. |
716 | | */ |
717 | | JSWeakmapKeyDelegateOp weakmapKeyDelegateOp; |
718 | | |
719 | | /** |
720 | | * Optional hook called when an object is moved by generational or |
721 | | * compacting GC. |
722 | | * |
723 | | * There may exist weak pointers to an object that are not traced through |
724 | | * when the normal trace APIs are used, for example objects in the wrapper |
725 | | * cache. This hook allows these pointers to be updated. |
726 | | * |
727 | | * Note that this hook can be called before JS_NewObject() returns if a GC |
728 | | * is triggered during construction of the object. This can happen for |
729 | | * global objects for example. |
730 | | * |
731 | | * The function should return the difference between nursery bytes used and |
732 | | * tenured bytes used, which may be nonzero e.g. if some nursery-allocated |
733 | | * data beyond the actual GC thing is moved into malloced memory. |
734 | | * |
735 | | * This is used to compute the nursery promotion rate. |
736 | | */ |
737 | | JSObjectMovedOp objectMovedOp; |
738 | | }; |
739 | | |
740 | | #define JS_NULL_CLASS_SPEC nullptr |
741 | | #define JS_NULL_CLASS_EXT nullptr |
742 | | |
743 | | struct MOZ_STATIC_CLASS ObjectOps |
744 | | { |
745 | | LookupPropertyOp lookupProperty; |
746 | | DefinePropertyOp defineProperty; |
747 | | HasPropertyOp hasProperty; |
748 | | GetPropertyOp getProperty; |
749 | | SetPropertyOp setProperty; |
750 | | GetOwnPropertyOp getOwnPropertyDescriptor; |
751 | | DeletePropertyOp deleteProperty; |
752 | | GetElementsOp getElements; |
753 | | JSFunToStringOp funToString; |
754 | | }; |
755 | | |
756 | | #define JS_NULL_OBJECT_OPS nullptr |
757 | | |
758 | | } // namespace js |
759 | | |
760 | | // Classes, objects, and properties. |
761 | | |
762 | | typedef void (*JSClassInternal)(); |
763 | | |
764 | | struct MOZ_STATIC_CLASS JSClassOps |
765 | | { |
766 | | /* Function pointer members (may be null). */ |
767 | | JSAddPropertyOp addProperty; |
768 | | JSDeletePropertyOp delProperty; |
769 | | JSEnumerateOp enumerate; |
770 | | JSNewEnumerateOp newEnumerate; |
771 | | JSResolveOp resolve; |
772 | | JSMayResolveOp mayResolve; |
773 | | JSFinalizeOp finalize; |
774 | | JSNative call; |
775 | | JSHasInstanceOp hasInstance; |
776 | | JSNative construct; |
777 | | JSTraceOp trace; |
778 | | }; |
779 | | |
780 | | #define JS_NULL_CLASS_OPS nullptr |
781 | | |
782 | | struct JSClass { |
783 | | JS_CLASS_MEMBERS(JSClassOps, JSFreeOp); |
784 | | |
785 | | void* reserved[3]; |
786 | | }; |
787 | | |
788 | | // Objects have private slot. |
789 | | static const uint32_t JSCLASS_HAS_PRIVATE = 1 << 0; |
790 | | |
791 | | // Class's initialization code will call `SetNewObjectMetadata` itself. |
792 | | static const uint32_t JSCLASS_DELAY_METADATA_BUILDER = 1 << 1; |
793 | | |
794 | | // Class is an XPCWrappedNative. WeakMaps use this to override the wrapper |
795 | | // disposal mechanism. |
796 | | static const uint32_t JSCLASS_IS_WRAPPED_NATIVE = 1 << 2; |
797 | | |
798 | | // Private is `nsISupports*`. |
799 | | static const uint32_t JSCLASS_PRIVATE_IS_NSISUPPORTS = 1 << 3; |
800 | | |
801 | | // Objects are DOM. |
802 | | static const uint32_t JSCLASS_IS_DOMJSCLASS = 1 << 4; |
803 | | |
804 | | // If wrapped by an xray wrapper, the builtin class's constructor won't be |
805 | | // unwrapped and invoked. Instead, the constructor is resolved in the caller's |
806 | | // compartment and invoked with a wrapped newTarget. The constructor has to |
807 | | // detect and handle this situation. See PromiseConstructor for details. |
808 | | static const uint32_t JSCLASS_HAS_XRAYED_CONSTRUCTOR = 1 << 5; |
809 | | |
810 | | // Objects of this class act like the value undefined, in some contexts. |
811 | | static const uint32_t JSCLASS_EMULATES_UNDEFINED = 1 << 6; |
812 | | |
813 | | // Reserved for embeddings. |
814 | | static const uint32_t JSCLASS_USERBIT1 = 1 << 7; |
815 | | |
816 | | // To reserve slots fetched and stored via JS_Get/SetReservedSlot, bitwise-or |
817 | | // JSCLASS_HAS_RESERVED_SLOTS(n) into the initializer for JSClass.flags, where n |
818 | | // is a constant in [1, 255]. Reserved slots are indexed from 0 to n-1. |
819 | | |
820 | | // Room for 8 flags below ... |
821 | | static const uintptr_t JSCLASS_RESERVED_SLOTS_SHIFT = 8; |
822 | | // ... and 16 above this field. |
823 | | static const uint32_t JSCLASS_RESERVED_SLOTS_WIDTH = 8; |
824 | | |
825 | | static const uint32_t JSCLASS_RESERVED_SLOTS_MASK = JS_BITMASK(JSCLASS_RESERVED_SLOTS_WIDTH); |
826 | | |
827 | 6 | #define JSCLASS_HAS_RESERVED_SLOTS(n) (((n) & JSCLASS_RESERVED_SLOTS_MASK) \ |
828 | 6 | << JSCLASS_RESERVED_SLOTS_SHIFT) |
829 | 21.2M | #define JSCLASS_RESERVED_SLOTS(clasp) (((clasp)->flags \ |
830 | 21.2M | >> JSCLASS_RESERVED_SLOTS_SHIFT) \ |
831 | 21.2M | & JSCLASS_RESERVED_SLOTS_MASK) |
832 | | |
833 | | #define JSCLASS_HIGH_FLAGS_SHIFT (JSCLASS_RESERVED_SLOTS_SHIFT + \ |
834 | | JSCLASS_RESERVED_SLOTS_WIDTH) |
835 | | |
836 | | static const uint32_t JSCLASS_IS_ANONYMOUS = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 0); |
837 | | static const uint32_t JSCLASS_IS_GLOBAL = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 1); |
838 | | static const uint32_t JSCLASS_INTERNAL_FLAG2 = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 2); |
839 | | static const uint32_t JSCLASS_INTERNAL_FLAG3 = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 3); |
840 | | static const uint32_t JSCLASS_IS_PROXY = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 4); |
841 | | static const uint32_t JSCLASS_SKIP_NURSERY_FINALIZE = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 5); |
842 | | |
843 | | // Reserved for embeddings. |
844 | | static const uint32_t JSCLASS_USERBIT2 = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 6); |
845 | | static const uint32_t JSCLASS_USERBIT3 = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 7); |
846 | | |
847 | | static const uint32_t JSCLASS_BACKGROUND_FINALIZE = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 8); |
848 | | static const uint32_t JSCLASS_FOREGROUND_FINALIZE = 1 << (JSCLASS_HIGH_FLAGS_SHIFT + 9); |
849 | | |
850 | | // Bits 26 through 31 are reserved for the CACHED_PROTO_KEY mechanism, see |
851 | | // below. |
852 | | |
853 | | // ECMA-262 requires that most constructors used internally create objects |
854 | | // with "the original Foo.prototype value" as their [[Prototype]] (__proto__) |
855 | | // member initial value. The "original ... value" verbiage is there because |
856 | | // in ECMA-262, global properties naming class objects are read/write and |
857 | | // deleteable, for the most part. |
858 | | // |
859 | | // Implementing this efficiently requires that global objects have classes |
860 | | // with the following flags. Failure to use JSCLASS_GLOBAL_FLAGS was |
861 | | // previously allowed, but is now an ES5 violation and thus unsupported. |
862 | | // |
863 | | // JSCLASS_GLOBAL_APPLICATION_SLOTS is the number of slots reserved at |
864 | | // the beginning of every global object's slots for use by the |
865 | | // application. |
866 | | static const uint32_t JSCLASS_GLOBAL_APPLICATION_SLOTS = 5; |
867 | | static const uint32_t JSCLASS_GLOBAL_SLOT_COUNT = |
868 | | JSCLASS_GLOBAL_APPLICATION_SLOTS + JSProto_LIMIT * 2 + 36; |
869 | | |
870 | | #define JSCLASS_GLOBAL_FLAGS_WITH_SLOTS(n) \ |
871 | 6 | (JSCLASS_IS_GLOBAL | JSCLASS_HAS_RESERVED_SLOTS(JSCLASS_GLOBAL_SLOT_COUNT + (n))) |
872 | | #define JSCLASS_GLOBAL_FLAGS \ |
873 | 3 | JSCLASS_GLOBAL_FLAGS_WITH_SLOTS(0) |
874 | | #define JSCLASS_HAS_GLOBAL_FLAG_AND_SLOTS(clasp) \ |
875 | | (((clasp)->flags & JSCLASS_IS_GLOBAL) \ |
876 | | && JSCLASS_RESERVED_SLOTS(clasp) >= JSCLASS_GLOBAL_SLOT_COUNT) |
877 | | |
878 | | // Fast access to the original value of each standard class's prototype. |
879 | | static const uint32_t JSCLASS_CACHED_PROTO_SHIFT = JSCLASS_HIGH_FLAGS_SHIFT + 10; |
880 | | static const uint32_t JSCLASS_CACHED_PROTO_MASK = JS_BITMASK(js::JSCLASS_CACHED_PROTO_WIDTH); |
881 | | |
882 | | #define JSCLASS_HAS_CACHED_PROTO(key) (uint32_t(key) << JSCLASS_CACHED_PROTO_SHIFT) |
883 | 3.25M | #define JSCLASS_CACHED_PROTO_KEY(clasp) ((JSProtoKey) \ |
884 | 3.25M | (((clasp)->flags \ |
885 | 3.25M | >> JSCLASS_CACHED_PROTO_SHIFT) \ |
886 | 3.25M | & JSCLASS_CACHED_PROTO_MASK)) |
887 | | |
888 | | // Initializer for unused members of statically initialized JSClass structs. |
889 | | #define JSCLASS_NO_INTERNAL_MEMBERS {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0} |
890 | | #define JSCLASS_NO_OPTIONAL_MEMBERS 0,0,0,0,0,JSCLASS_NO_INTERNAL_MEMBERS |
891 | | |
892 | | namespace js { |
893 | | |
894 | | struct MOZ_STATIC_CLASS Class |
895 | | { |
896 | | JS_CLASS_MEMBERS(js::ClassOps, FreeOp); |
897 | | const ClassSpec* spec; |
898 | | const ClassExtension* ext; |
899 | | const ObjectOps* oOps; |
900 | | |
901 | | /* |
902 | | * Objects of this class aren't native objects. They don't have Shapes that |
903 | | * describe their properties and layout. Classes using this flag must |
904 | | * provide their own property behavior, either by being proxy classes (do |
905 | | * this) or by overriding all the ObjectOps except getElements |
906 | | * (don't do this). |
907 | | */ |
908 | | static const uint32_t NON_NATIVE = JSCLASS_INTERNAL_FLAG2; |
909 | | |
910 | 46.8M | bool isNative() const { |
911 | 46.8M | return !(flags & NON_NATIVE); |
912 | 46.8M | } |
913 | | |
914 | 3.28M | bool hasPrivate() const { |
915 | 3.28M | return !!(flags & JSCLASS_HAS_PRIVATE); |
916 | 3.28M | } |
917 | | |
918 | 61 | bool emulatesUndefined() const { |
919 | 61 | return flags & JSCLASS_EMULATES_UNDEFINED; |
920 | 61 | } |
921 | | |
922 | 6.54M | bool isJSFunction() const { |
923 | 6.54M | return this == js::FunctionClassPtr; |
924 | 6.54M | } |
925 | | |
926 | 0 | bool nonProxyCallable() const { |
927 | 0 | MOZ_ASSERT(!isProxy()); |
928 | 0 | return isJSFunction() || getCall(); |
929 | 0 | } |
930 | | |
931 | 63.4M | bool isProxy() const { |
932 | 63.4M | return flags & JSCLASS_IS_PROXY; |
933 | 63.4M | } |
934 | | |
935 | 20 | bool isDOMClass() const { |
936 | 20 | return flags & JSCLASS_IS_DOMJSCLASS; |
937 | 20 | } |
938 | | |
939 | 4.87M | bool shouldDelayMetadataBuilder() const { |
940 | 4.87M | return flags & JSCLASS_DELAY_METADATA_BUILDER; |
941 | 4.87M | } |
942 | | |
943 | 17.8M | bool isWrappedNative() const { |
944 | 17.8M | return flags & JSCLASS_IS_WRAPPED_NATIVE; |
945 | 17.8M | } |
946 | | |
947 | 36 | static size_t offsetOfFlags() { return offsetof(Class, flags); } |
948 | | |
949 | 22 | bool specDefined() const { return spec ? spec->defined() : false; } |
950 | | JSProtoKey specInheritanceProtoKey() |
951 | 3 | const { return spec ? spec->inheritanceProtoKey() : JSProto_Null; } |
952 | | bool specShouldDefineConstructor() |
953 | 19 | const { return spec ? spec->shouldDefineConstructor() : true; } |
954 | | ClassObjectCreationOp specCreateConstructorHook() |
955 | 31 | const { return spec ? spec->createConstructor : nullptr; } |
956 | | ClassObjectCreationOp specCreatePrototypeHook() |
957 | 31 | const { return spec ? spec->createPrototype : nullptr; } |
958 | | const JSFunctionSpec* specConstructorFunctions() |
959 | 13 | const { return spec ? spec->constructorFunctions : nullptr; } |
960 | | const JSPropertySpec* specConstructorProperties() |
961 | 13 | const { return spec ? spec->constructorProperties : nullptr; } |
962 | | const JSFunctionSpec* specPrototypeFunctions() |
963 | 13 | const { return spec ? spec->prototypeFunctions : nullptr; } |
964 | | const JSPropertySpec* specPrototypeProperties() |
965 | 13 | const { return spec ? spec->prototypeProperties : nullptr; } |
966 | | FinishClassInitOp specFinishInitHook() |
967 | 19 | const { return spec ? spec->finishInit : nullptr; } |
968 | | |
969 | | JSWeakmapKeyDelegateOp extWeakmapKeyDelegateOp() |
970 | 0 | const { return ext ? ext->weakmapKeyDelegateOp : nullptr; } |
971 | | JSObjectMovedOp extObjectMovedOp() |
972 | 340 | const { return ext ? ext->objectMovedOp : nullptr; } |
973 | | |
974 | 12.9M | LookupPropertyOp getOpsLookupProperty() const { return oOps ? oOps->lookupProperty : nullptr; } |
975 | 3.25M | DefinePropertyOp getOpsDefineProperty() const { return oOps ? oOps->defineProperty : nullptr; } |
976 | 83 | HasPropertyOp getOpsHasProperty() const { return oOps ? oOps->hasProperty : nullptr; } |
977 | 10.3M | GetPropertyOp getOpsGetProperty() const { return oOps ? oOps->getProperty : nullptr; } |
978 | 112 | SetPropertyOp getOpsSetProperty() const { return oOps ? oOps->setProperty : nullptr; } |
979 | | GetOwnPropertyOp getOpsGetOwnPropertyDescriptor() |
980 | 14 | const { return oOps ? oOps->getOwnPropertyDescriptor |
981 | 14 | : nullptr; } |
982 | 0 | DeletePropertyOp getOpsDeleteProperty() const { return oOps ? oOps->deleteProperty : nullptr; } |
983 | 0 | GetElementsOp getOpsGetElements() const { return oOps ? oOps->getElements : nullptr; } |
984 | 0 | JSFunToStringOp getOpsFunToString() const { return oOps ? oOps->funToString : nullptr; } |
985 | | }; |
986 | | |
987 | | static_assert(offsetof(JSClassOps, addProperty) == offsetof(ClassOps, addProperty), |
988 | | "ClassOps and JSClassOps must be consistent"); |
989 | | static_assert(offsetof(JSClassOps, delProperty) == offsetof(ClassOps, delProperty), |
990 | | "ClassOps and JSClassOps must be consistent"); |
991 | | static_assert(offsetof(JSClassOps, enumerate) == offsetof(ClassOps, enumerate), |
992 | | "ClassOps and JSClassOps must be consistent"); |
993 | | static_assert(offsetof(JSClassOps, newEnumerate) == offsetof(ClassOps, newEnumerate), |
994 | | "ClassOps and JSClassOps must be consistent"); |
995 | | static_assert(offsetof(JSClassOps, resolve) == offsetof(ClassOps, resolve), |
996 | | "ClassOps and JSClassOps must be consistent"); |
997 | | static_assert(offsetof(JSClassOps, mayResolve) == offsetof(ClassOps, mayResolve), |
998 | | "ClassOps and JSClassOps must be consistent"); |
999 | | static_assert(offsetof(JSClassOps, finalize) == offsetof(ClassOps, finalize), |
1000 | | "ClassOps and JSClassOps must be consistent"); |
1001 | | static_assert(offsetof(JSClassOps, call) == offsetof(ClassOps, call), |
1002 | | "ClassOps and JSClassOps must be consistent"); |
1003 | | static_assert(offsetof(JSClassOps, construct) == offsetof(ClassOps, construct), |
1004 | | "ClassOps and JSClassOps must be consistent"); |
1005 | | static_assert(offsetof(JSClassOps, hasInstance) == offsetof(ClassOps, hasInstance), |
1006 | | "ClassOps and JSClassOps must be consistent"); |
1007 | | static_assert(offsetof(JSClassOps, trace) == offsetof(ClassOps, trace), |
1008 | | "ClassOps and JSClassOps must be consistent"); |
1009 | | static_assert(sizeof(JSClassOps) == sizeof(ClassOps), |
1010 | | "ClassOps and JSClassOps must be consistent"); |
1011 | | |
1012 | | static_assert(offsetof(JSClass, name) == offsetof(Class, name), |
1013 | | "Class and JSClass must be consistent"); |
1014 | | static_assert(offsetof(JSClass, flags) == offsetof(Class, flags), |
1015 | | "Class and JSClass must be consistent"); |
1016 | | static_assert(offsetof(JSClass, cOps) == offsetof(Class, cOps), |
1017 | | "Class and JSClass must be consistent"); |
1018 | | static_assert(sizeof(JSClass) == sizeof(Class), |
1019 | | "Class and JSClass must be consistent"); |
1020 | | |
1021 | | static MOZ_ALWAYS_INLINE const JSClass* |
1022 | | Jsvalify(const Class* c) |
1023 | 6.49M | { |
1024 | 6.49M | return (const JSClass*)c; |
1025 | 6.49M | } Unexecuted instantiation: SandboxBroker.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: SandboxBrokerPolicyFactory.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: SandboxCrash.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: SandboxPrefBridge.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: SandboxLaunch.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: SandboxReporter.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_certverifier0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_apps0.cpp:js::Jsvalify(js::Class const*) Unified_cpp_xpcom_base0.cpp:js::Jsvalify(js::Class const*) Line | Count | Source | 1023 | 1.62M | { | 1024 | 1.62M | return (const JSClass*)c; | 1025 | 1.62M | } |
Unexecuted instantiation: Unified_cpp_xpcom_base1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_base2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_ds0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_ds1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_io0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_io1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_components0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: IdleTaskRunner.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_threads0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_threads1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_threads2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: xptdata.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_reflect_xptinfo0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: xptcall.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: xptcinvoke_x86_64_unix.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: xptcstubs_x86_64_linux.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_chrome0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Services.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_build0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_modules_libpref0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: hnjstdio.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_hyphenation_glue0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_intl_locale0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_intl_strres0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_unicharutil_util0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_intl_l10n0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_base1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_base2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_base3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_base4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsCookieService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_cookie0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsEffectiveTLDService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsHostResolver.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_dns0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dns_mdns_libmdns0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_socket0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_converters0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_cache0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_cache1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AppCacheStorage.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: CacheStorage.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_cache20.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_cache21.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_about0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_data0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_file0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_protocol_ftp0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsGIOProtocolHandler.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsHttpChannelAuthProvider.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsHttpHandler.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_http0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_http1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_http2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_protocol_res0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_viewsource0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_websocket0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_protocol_wyciwyg0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsNotifyAddrListener_Linux.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DataChannel.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_wifi0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsNetModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsHttpNegotiateAuth.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ipc_chromium0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ipc_chromium1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ipc_chromium2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BackgroundChildImpl.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BackgroundParentImpl.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: FileDescriptorSetChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: FileDescriptorSetParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ipc_glue0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ipc_glue1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols10.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols12.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols13.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols14.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols15.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols16.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols17.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols18.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols19.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols20.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols21.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols22.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols23.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols24.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols25.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols26.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols27.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols28.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols29.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols30.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols31.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedProtocols9.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: IPCMessageTypeName.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestShellChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestShellParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: XPCShellEnvironment.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Hal.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_hal0.cpp:js::Jsvalify(js::Class const*) XrayWrapper.cpp:js::Jsvalify(js::Class const*) Line | Count | Source | 1023 | 2 | { | 1024 | 2 | return (const JSClass*)c; | 1025 | 2 | } |
Unexecuted instantiation: Unified_cpp_xpconnect_wrappers0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: mozJSComponentLoader.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_xpconnect_loader0.cpp:js::Jsvalify(js::Class const*) Unified_cpp_js_xpconnect_src0.cpp:js::Jsvalify(js::Class const*) Line | Count | Source | 1023 | 32 | { | 1024 | 32 | return (const JSClass*)c; | 1025 | 32 | } |
Unified_cpp_js_xpconnect_src1.cpp:js::Jsvalify(js::Class const*) Line | Count | Source | 1023 | 4.87M | { | 1024 | 4.87M | return (const JSClass*)c; | 1025 | 4.87M | } |
Unexecuted instantiation: Unified_cpp_modules_libjar0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_libjar_zipwriter0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: mozStorageBindingParams.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: mozStorageConnection.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_storage0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_storage1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: mozStorageModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_extensions_cookie0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_permissions0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_src_common0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_src_media-conduit0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_src_mediapipeline0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_src_peerconnection0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nr_socket_prsock.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nr_timer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nricectx.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nriceresolver.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nriceresolverfake.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: stun_socket_filter.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: test_nr_socket.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: transportflow.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: transportlayer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_media_mtransport_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_uriloader_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsOSHelperAppService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_uriloader_exthandler0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_uriloader_prefetch0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BasePrincipal.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_caps0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_parser_xml0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_parser_htmlparser0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_parser_html0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_parser_html1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_parser_html2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: InlineTranslator.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_ycbcr0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsDeviceContext.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_src0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: GLContextProviderGLX.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: SharedSurfaceGLX.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_gl0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_gl1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ImageContainer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: PersistentBufferProvider.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BasicImageLayer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TextureClientX11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: X11BasicCompositor.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: X11TextureSourceBasic.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: X11TextureHost.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ShadowLayerUtilsX11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: X11TextureSourceOGL.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: WebRenderTextureHost.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers10.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_layers9.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxFT2FontBase.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxFT2Utils.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxFcPlatformFontList.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxGdkNativeRenderer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxPlatform.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxPlatformGtk.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxPrefs.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_thebes0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_thebes1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: GPUParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VRDisplayHost.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VRDisplayLocal.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxVRExternal.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxVROpenVR.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: gfxVRPuppet.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_vr0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_vr1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_vr_service0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_config0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_webrender_bindings0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsImageModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image_decoders0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsIconChannel.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image_decoders_icon0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsPNGEncoder.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_abort0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_animation0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DOMIntersectionObserver.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsContentUtils.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsDOMWindowUtils.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsFrameMessageManager.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsGlobalWindowInner.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsGlobalWindowOuter.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsImageLoadingContent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsObjectLoadingContent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsPluginArray.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base9.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: PrototypeList.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RegisterBindings.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RegisterWorkerBindings.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RegisterWorkerDebuggerBindings.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RegisterWorkletBindings.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ResolveSystemBinding.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnionTypes.cpp:js::Jsvalify(js::Class const*) UnifiedBindings0.cpp:js::Jsvalify(js::Class const*) Line | Count | Source | 1023 | 3 | { | 1024 | 3 | return (const JSClass*)c; | 1025 | 3 | } |
Unexecuted instantiation: UnifiedBindings1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings10.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings12.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings13.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings14.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings15.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings16.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings17.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings18.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings19.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings20.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings21.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings22.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings23.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UnifiedBindings9.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: StructuredClone.cpp:js::Jsvalify(js::Class const*) Unified_cpp_dom_bindings0.cpp:js::Jsvalify(js::Class const*) Line | Count | Source | 1023 | 3 | { | 1024 | 3 | return (const JSClass*)c; | 1025 | 3 | } |
Unexecuted instantiation: BatteryManager.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BrowserElementParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_cache0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_cache1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ImageUtils.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_webgpu0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_webgpu1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_clients_api0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_clients_manager0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_clients_manager1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_commandhandler0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_credentialmanagement0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_crypto0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_encoding0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: EventStateManager.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_events0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_events1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_events2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_events3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_fetch0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_file0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_file1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_file_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_file_uri0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_filehandle0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_filesystem0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_filesystem_compat0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_flex0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_gamepad0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: PositionError.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsGeolocation.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_grid0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AutoplayPermissionManager.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AutoplayPermissionRequest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: PluginDocument.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_html_input0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_jsurl0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AsmJSCache.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_mathml0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: CubebUtils.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DecoderTraits.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media10.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media9.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_doctor0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_eme0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_encoder0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_flac0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_gmp0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_gmp1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_gmp2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_media_imagecapture0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RemoteVideoDecoder.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VideoDecoderChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VideoDecoderManagerChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VideoDecoderManagerParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VideoDecoderParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_mediacapabilities0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_mediasink0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_media_mediasource0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_mp30.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_ogg0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_platforms0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_agnostic_eme0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_agnostic_gmp0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_media_platforms_omx0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: FFVPXRuntimeLinker.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ffmpeg_ffvpx0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_platforms_ffmpeg0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ffmpeg_libav530.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ffmpeg_libav540.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ffmpeg_libav550.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ffmpeg_ffmpeg570.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ffmpeg_ffmpeg580.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_systemservices0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_wave0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AudioNodeEngineSSE2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_webaudio0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_webaudio1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_webaudio2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_webaudio_blink0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_webm0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: MediaEngineWebRTC.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_webrtc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_webspeech_synth0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_synth_speechd0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_recognition0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: MP4Demuxer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_mp40.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: MediaModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_midi0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_midi1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_notification0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_offline0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_power0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_push0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_quota0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_security0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_storage0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_svg8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_network0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_permission0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsNPAPIPlugin.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsPluginHost.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_plugins_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: PluginInstanceChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_plugins_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_plugins_ipc1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ActorsParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Key.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_indexedDB0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_indexedDB1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_system0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ContentChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ProcessHangMonitor.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_ipc1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_workers0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_workers1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_audiochannel0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_broadcastchannel0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_messagechannel0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_promise0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_smil0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_smil1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_url0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_webauthn0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xbl0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xbl1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xml0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xml0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xpath0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xpath1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xpath2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xslt0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xslt1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xul0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_vr0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_u2f0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_console0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_performance0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_webbrowserpersist0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_xhr0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_worklet0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_script0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_payments0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_payments_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_websocket0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_serviceworkers0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_serviceworkers1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_serviceworkers2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_simpledb0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_prio0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_presentation0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_presentation1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_provider0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_view0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsBaseDragService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsBaseWidget.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsShmImage.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget_headless0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsWindow.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget_gtk0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget_gtk1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_widget_gtk2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_editor_libeditor0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_editor_libeditor1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_editor_libeditor2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_editor_spellchecker0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_editor_composer0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsLayoutStylesheetCache.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_style0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_style1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_style2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_style3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_style4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsRefreshDriver.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_base1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_base2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsPluginFrame.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_generic0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_generic1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_generic2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_generic3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_forms0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_forms1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_tables0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_svg0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_svg1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_svg2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_xul0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_xul1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_xul_tree0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_xul_grid0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VsyncChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VsyncParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_mathml0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_mathml1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_inspector0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_painting0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_painting1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_printing0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_build0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_docshell_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_base_timeline0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_docshell_shistory0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsDocShellModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpfe_appshell0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AccessibleWrap.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ApplicationAccessibleWrap.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AtkSocketAccessible.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DOMtoATK.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DocAccessibleWrap.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Platform.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RootAccessibleWrap.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: UtilInterface.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiHyperlink.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceAction.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceComponent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceDocument.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceEditableText.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceHyperlinkImpl.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceHypertext.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceImage.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceSelection.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceTable.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceTableCell.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceText.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsMaiInterfaceValue.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_aom0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_base0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_base1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_generic0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_html0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DocAccessibleChild.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ProxyAccessible.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: xpcAccEvents.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_xpcom0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_accessible_xul0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_tools_profiler0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_hunspell_glue0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_spellcheck_src0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_manager_pki0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_components_alerts0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_antitracking0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_ackgroundhangmonitor0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_components_browser0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsWebBrowserModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_clearsitedata0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsCommandLine.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DownloadPlatform.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_extensions0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_webrequest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: FinalizationWitnessService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_components_find0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_mediasniffer0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: MozIntlHelper.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: NativeOSFileInternals.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: PerfMeasurement.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_perfmonitoring0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_components_places0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: reflect.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_reputationservice0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_resistfingerprinting0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_sessionstore0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_components_startup0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsBrowserStatusFilter.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Telemetry.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryCommon.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryEvent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryHistogram.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryScalar.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryIPC.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryIPCAccumulator.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryGeckoViewPersistence.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: CombinedStacks.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: KeyedStackCapturer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TelemetryIOInterposeObserver.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: WebrtcTelemetry.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_thumbnails0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsTypeAheadFind.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: HashStore.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VariableLengthPrefixSet.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsUrlClassifierPrefixSet.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsUrlClassifierStreamUpdater.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_url-classifier0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_windowwatcher0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ctypes.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_autocomplete0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_printingui_ipc0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsFormFillController.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsTerminator.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsToolkitCompsModule.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_mozapps_extensions0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_toolkit_profile0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_toolkit_recordreplay0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ProfileReset.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsAppRunner.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsEmbedFunctions.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_toolkit_xre0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsUnixSystemProxySettings.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_pref_autoconfig_src0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsJSInspector.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: FileDescriptorOutputStream.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: HeapSnapshot.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: HeapSnapshotTempFileHelperParent.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: IdentityCryptoService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_startupcache0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: JSDebugger.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsAlertsIconListener.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Faulty.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: MessageManagerFuzzer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ProtocolFuzzer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: AboutRedirector.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsFeedSniffer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nsGNOMEShellService.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestBroker.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_test0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_netwerk_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_storage_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: mediaconduit_unittests.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: mediapipeline_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: sdp_unittests.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: videoconduit_unittests.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_caps_tests_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_apz_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_tests_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_gfx_tests_gtest1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestDownscalingFilterNoSkia.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_image_test_gtest1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestDecoders.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_base_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_canvas_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_media_doctor_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_mediasource_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_media_gtest1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestParser.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_quota_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_security_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: csp_fuzzer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: content_parent_ipc_libfuzz.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_dom_prio_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_style_test_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_layout_base_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_tests_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: DataStorageTest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: OCSPCacheTest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TLSIntoleranceTest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_places_tests_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_tests0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_geckoview_gtest0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_startupcache_test0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: TestSyncRunnable.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: buffered_stun_socket_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: ice_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: multi_tcp_socket_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: nrappkit_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: proxy_tunnel_socket_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: rlogconnector_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: runnable_utils_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: sctp_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: simpletokenbucket_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: sockettransportservice_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: test_nr_socket_ice_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: test_nr_socket_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: transport_unittests.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: turn_unittest.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: FuzzingInterfaceStream.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: CTypes.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Library.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: StoreBuffer.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: jsutil.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src0.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src1.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src10.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src11.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src12.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src14.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src15.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src17.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src18.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src19.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src2.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src20.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src21.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src22.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src23.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src24.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src25.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src26.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src27.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src28.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src29.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src3.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src30.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src31.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src32.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src33.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src34.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src35.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src36.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src37.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src38.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src39.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src4.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src40.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src41.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src42.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src43.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src44.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src45.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src5.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src6.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src7.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src8.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src9.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: RegExp.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BinSource-auto.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BinSource.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BinToken.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BinTokenReaderBase.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BinTokenReaderMultipart.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: BinTokenReaderTester.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Parser.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Disassembler-x86-shared.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: jsmath.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Interpreter.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: VTuneWrapper.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src13.cpp:js::Jsvalify(js::Class const*) Unexecuted instantiation: Unified_cpp_js_src16.cpp:js::Jsvalify(js::Class const*) |
1026 | | |
1027 | | static MOZ_ALWAYS_INLINE const Class* |
1028 | | Valueify(const JSClass* c) |
1029 | 4.87M | { |
1030 | 4.87M | return (const Class*)c; |
1031 | 4.87M | } Unexecuted instantiation: SandboxBroker.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: SandboxBrokerPolicyFactory.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: SandboxCrash.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: SandboxPrefBridge.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: SandboxLaunch.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: SandboxReporter.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_certverifier0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_apps0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_base1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_base2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_ds0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_ds1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_io0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_io1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_components0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: IdleTaskRunner.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_threads0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_threads1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_threads2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: xptdata.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_reflect_xptinfo0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: xptcall.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: xptcinvoke_x86_64_unix.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: xptcstubs_x86_64_linux.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_chrome0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Services.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_build0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_modules_libpref0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: hnjstdio.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_hyphenation_glue0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_intl_locale0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_intl_strres0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_unicharutil_util0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_intl_l10n0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_base1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_base2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_base3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_base4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsCookieService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_cookie0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsEffectiveTLDService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsHostResolver.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_dns0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dns_mdns_libmdns0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_socket0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_converters0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_cache0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_cache1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AppCacheStorage.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: CacheStorage.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_cache20.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_cache21.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_about0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_data0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_file0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_protocol_ftp0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsGIOProtocolHandler.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsHttpChannelAuthProvider.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsHttpHandler.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_http0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_http1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_http2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_protocol_res0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_viewsource0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_websocket0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_protocol_wyciwyg0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsNotifyAddrListener_Linux.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DataChannel.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_wifi0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsNetModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsHttpNegotiateAuth.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ipc_chromium0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ipc_chromium1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ipc_chromium2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BackgroundChildImpl.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BackgroundParentImpl.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: FileDescriptorSetChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: FileDescriptorSetParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ipc_glue0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ipc_glue1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols10.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols12.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols13.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols14.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols15.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols16.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols17.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols18.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols19.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols20.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols21.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols22.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols23.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols24.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols25.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols26.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols27.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols28.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols29.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols30.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols31.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedProtocols9.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: IPCMessageTypeName.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestShellChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestShellParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: XPCShellEnvironment.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Hal.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_hal0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: XrayWrapper.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpconnect_wrappers0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: mozJSComponentLoader.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_xpconnect_loader0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_xpconnect_src0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_xpconnect_src1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_modules_libjar0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_libjar_zipwriter0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: mozStorageBindingParams.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: mozStorageConnection.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_storage0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_storage1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: mozStorageModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_extensions_cookie0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_permissions0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_src_common0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_src_media-conduit0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_src_mediapipeline0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_src_peerconnection0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nr_socket_prsock.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nr_timer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nricectx.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nriceresolver.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nriceresolverfake.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: stun_socket_filter.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: test_nr_socket.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: transportflow.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: transportlayer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_media_mtransport_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_uriloader_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsOSHelperAppService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_uriloader_exthandler0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_uriloader_prefetch0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BasePrincipal.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_caps0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_parser_xml0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_parser_htmlparser0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_parser_html0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_parser_html1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_parser_html2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: InlineTranslator.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_ycbcr0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsDeviceContext.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_src0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: GLContextProviderGLX.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: SharedSurfaceGLX.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_gl0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_gl1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ImageContainer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: PersistentBufferProvider.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BasicImageLayer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TextureClientX11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: X11BasicCompositor.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: X11TextureSourceBasic.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: X11TextureHost.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ShadowLayerUtilsX11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: X11TextureSourceOGL.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: WebRenderTextureHost.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers10.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_layers9.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxFT2FontBase.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxFT2Utils.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxFcPlatformFontList.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxGdkNativeRenderer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxPlatform.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxPlatformGtk.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxPrefs.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_thebes0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_thebes1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: GPUParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VRDisplayHost.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VRDisplayLocal.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxVRExternal.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxVROpenVR.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: gfxVRPuppet.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_vr0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_vr1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_vr_service0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_config0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_webrender_bindings0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsImageModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image_decoders0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsIconChannel.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image_decoders_icon0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsPNGEncoder.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_abort0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_animation0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DOMIntersectionObserver.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsContentUtils.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsDOMWindowUtils.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsFrameMessageManager.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsGlobalWindowInner.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsGlobalWindowOuter.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsImageLoadingContent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsObjectLoadingContent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsPluginArray.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base9.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: PrototypeList.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RegisterBindings.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RegisterWorkerBindings.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RegisterWorkerDebuggerBindings.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RegisterWorkletBindings.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ResolveSystemBinding.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnionTypes.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings10.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings12.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings13.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings14.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings15.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings16.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings17.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings18.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings19.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings20.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings21.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings22.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings23.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UnifiedBindings9.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: StructuredClone.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_bindings0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BatteryManager.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BrowserElementParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_cache0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_cache1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ImageUtils.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_webgpu0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_webgpu1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_clients_api0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_clients_manager0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_clients_manager1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_commandhandler0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_credentialmanagement0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_crypto0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_encoding0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: EventStateManager.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_events0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_events1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_events2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_events3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_fetch0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_file0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_file1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_file_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_file_uri0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_filehandle0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_filesystem0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_filesystem_compat0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_flex0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_gamepad0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: PositionError.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsGeolocation.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_grid0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AutoplayPermissionManager.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AutoplayPermissionRequest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: PluginDocument.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_html_input0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_jsurl0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AsmJSCache.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_mathml0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: CubebUtils.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DecoderTraits.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media10.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media9.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_doctor0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_eme0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_encoder0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_flac0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_gmp0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_gmp1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_gmp2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_media_imagecapture0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RemoteVideoDecoder.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VideoDecoderChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VideoDecoderManagerChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VideoDecoderManagerParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VideoDecoderParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_mediacapabilities0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_mediasink0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_media_mediasource0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_mp30.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_ogg0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_platforms0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_agnostic_eme0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_agnostic_gmp0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_media_platforms_omx0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: FFVPXRuntimeLinker.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ffmpeg_ffvpx0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_platforms_ffmpeg0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ffmpeg_libav530.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ffmpeg_libav540.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ffmpeg_libav550.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ffmpeg_ffmpeg570.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ffmpeg_ffmpeg580.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_systemservices0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_wave0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AudioNodeEngineSSE2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_webaudio0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_webaudio1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_webaudio2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_webaudio_blink0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_webm0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: MediaEngineWebRTC.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_webrtc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_webspeech_synth0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_synth_speechd0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_recognition0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: MP4Demuxer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_mp40.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: MediaModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_midi0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_midi1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_notification0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_offline0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_power0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_push0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_quota0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_security0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_storage0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_svg8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_network0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_permission0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsNPAPIPlugin.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsPluginHost.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_plugins_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: PluginInstanceChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_plugins_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_plugins_ipc1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ActorsParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Key.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_indexedDB0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_indexedDB1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_system0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ContentChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ProcessHangMonitor.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_ipc1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_workers0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_workers1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_audiochannel0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_broadcastchannel0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_messagechannel0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_promise0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_smil0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_smil1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_url0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_webauthn0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xbl0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xbl1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xml0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xml0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xpath0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xpath1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xpath2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xslt0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xslt_xslt1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xul0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_vr0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_u2f0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_console0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_performance0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_webbrowserpersist0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_xhr0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_worklet0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_script0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_payments0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_payments_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_websocket0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_serviceworkers0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_serviceworkers1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_serviceworkers2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_simpledb0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_prio0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_presentation0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_presentation1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_provider0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_view0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsBaseDragService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsBaseWidget.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsShmImage.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget_headless0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsWindow.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget_gtk0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget_gtk1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_widget_gtk2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_editor_libeditor0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_editor_libeditor1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_editor_libeditor2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_editor_spellchecker0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_editor_composer0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsLayoutStylesheetCache.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_style0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_style1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_style2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_style3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_style4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsRefreshDriver.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_base1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_base2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsPluginFrame.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_generic0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_generic1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_generic2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_generic3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_forms0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_forms1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_tables0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_svg0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_svg1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_svg2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_xul0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_xul1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_xul_tree0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_xul_grid0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VsyncChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VsyncParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_mathml0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_mathml1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_inspector0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_painting0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_painting1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_printing0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_build0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_docshell_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_base_timeline0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_docshell_shistory0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsDocShellModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpfe_appshell0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AccessibleWrap.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ApplicationAccessibleWrap.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AtkSocketAccessible.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DOMtoATK.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DocAccessibleWrap.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Platform.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RootAccessibleWrap.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: UtilInterface.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiHyperlink.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceAction.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceComponent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceDocument.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceEditableText.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceHyperlinkImpl.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceHypertext.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceImage.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceSelection.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceTable.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceTableCell.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceText.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsMaiInterfaceValue.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_aom0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_base0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_base1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_generic0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_html0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DocAccessibleChild.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ProxyAccessible.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: xpcAccEvents.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_xpcom0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_accessible_xul0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_tools_profiler0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_hunspell_glue0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_spellcheck_src0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_manager_ssl3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_manager_pki0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_components_alerts0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_antitracking0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_ackgroundhangmonitor0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_components_browser0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsWebBrowserModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_clearsitedata0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsCommandLine.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DownloadPlatform.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_extensions0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_webrequest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: FinalizationWitnessService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_components_find0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_mediasniffer0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: MozIntlHelper.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: NativeOSFileInternals.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: PerfMeasurement.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_perfmonitoring0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_components_places0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: reflect.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_reputationservice0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_resistfingerprinting0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_sessionstore0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_components_startup0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsBrowserStatusFilter.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Telemetry.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryCommon.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryEvent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryHistogram.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryScalar.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryIPC.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryIPCAccumulator.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryGeckoViewPersistence.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: CombinedStacks.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: KeyedStackCapturer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TelemetryIOInterposeObserver.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: WebrtcTelemetry.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_thumbnails0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsTypeAheadFind.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: HashStore.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VariableLengthPrefixSet.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsUrlClassifierPrefixSet.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsUrlClassifierStreamUpdater.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_url-classifier0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_windowwatcher0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ctypes.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_autocomplete0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_printingui_ipc0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsFormFillController.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsTerminator.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsToolkitCompsModule.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_mozapps_extensions0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_toolkit_profile0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_toolkit_recordreplay0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ProfileReset.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsAppRunner.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsEmbedFunctions.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_toolkit_xre0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsUnixSystemProxySettings.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_pref_autoconfig_src0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsJSInspector.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: FileDescriptorOutputStream.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: HeapSnapshot.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: HeapSnapshotTempFileHelperParent.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: IdentityCryptoService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_startupcache0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: JSDebugger.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsAlertsIconListener.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Faulty.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: MessageManagerFuzzer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ProtocolFuzzer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: AboutRedirector.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsFeedSniffer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nsGNOMEShellService.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestBroker.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_xpcom_tests_gtest3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_test0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_netwerk_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_storage_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: mediaconduit_unittests.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: mediapipeline_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: sdp_unittests.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: videoconduit_unittests.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_caps_tests_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_apz_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_tests_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_gfx_tests_gtest1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestDownscalingFilterNoSkia.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_image_test_gtest1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestDecoders.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_base_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_canvas_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_media_doctor_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_mediasource_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_media_gtest1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestParser.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_quota_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_security_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: csp_fuzzer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: content_parent_ipc_libfuzz.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_dom_prio_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_style_test_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_layout_base_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_tests_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: DataStorageTest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: OCSPCacheTest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TLSIntoleranceTest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_places_tests_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_tests0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_geckoview_gtest0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_startupcache_test0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: TestSyncRunnable.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: buffered_stun_socket_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: ice_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: multi_tcp_socket_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: nrappkit_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: proxy_tunnel_socket_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: rlogconnector_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: runnable_utils_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: sctp_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: simpletokenbucket_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: sockettransportservice_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: test_nr_socket_ice_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: test_nr_socket_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: transport_unittests.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: turn_unittest.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: FuzzingInterfaceStream.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: CTypes.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Library.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: StoreBuffer.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: jsutil.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src0.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src1.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src10.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src11.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src12.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src14.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src15.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src17.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src18.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src19.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src2.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src20.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src21.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src22.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src23.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src24.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src25.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src26.cpp:js::Valueify(JSClass const*) Unified_cpp_js_src27.cpp:js::Valueify(JSClass const*) Line | Count | Source | 1029 | 4.87M | { | 1030 | 4.87M | return (const Class*)c; | 1031 | 4.87M | } |
Unexecuted instantiation: Unified_cpp_js_src28.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src29.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src3.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src30.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src31.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src32.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src33.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src34.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src35.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src36.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src37.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src38.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src39.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src4.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src40.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src41.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src42.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src43.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src44.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src45.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src5.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src6.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src7.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src8.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src9.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: RegExp.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BinSource-auto.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BinSource.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BinToken.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BinTokenReaderBase.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BinTokenReaderMultipart.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: BinTokenReaderTester.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Parser.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Disassembler-x86-shared.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: jsmath.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Interpreter.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: VTuneWrapper.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src13.cpp:js::Valueify(JSClass const*) Unexecuted instantiation: Unified_cpp_js_src16.cpp:js::Valueify(JSClass const*) |
1032 | | |
1033 | | /** |
1034 | | * Enumeration describing possible values of the [[Class]] internal property |
1035 | | * value of objects. |
1036 | | */ |
1037 | | enum class ESClass { |
1038 | | Object, |
1039 | | Array, |
1040 | | Number, |
1041 | | String, |
1042 | | Boolean, |
1043 | | RegExp, |
1044 | | ArrayBuffer, |
1045 | | SharedArrayBuffer, |
1046 | | Date, |
1047 | | Set, |
1048 | | Map, |
1049 | | Promise, |
1050 | | MapIterator, |
1051 | | SetIterator, |
1052 | | Arguments, |
1053 | | Error, |
1054 | | #ifdef ENABLE_BIGINT |
1055 | | BigInt, |
1056 | | #endif |
1057 | | |
1058 | | /** None of the above. */ |
1059 | | Other |
1060 | | }; |
1061 | | |
1062 | | /* Fills |vp| with the unboxed value for boxed types, or undefined otherwise. */ |
1063 | | bool |
1064 | | Unbox(JSContext* cx, JS::HandleObject obj, JS::MutableHandleValue vp); |
1065 | | |
1066 | | #ifdef DEBUG |
1067 | | JS_FRIEND_API(bool) |
1068 | | HasObjectMovedOp(JSObject* obj); |
1069 | | #endif |
1070 | | |
1071 | | } /* namespace js */ |
1072 | | |
1073 | | #endif /* js_Class_h */ |