Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/dist/include/mozilla/dom/RootedDictionary.h
Line
Count
Source (jump to first uncovered line)
1
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
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 file,
5
 * You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7
#ifndef mozilla_dom_RootedDictionary_h__
8
#define mozilla_dom_RootedDictionary_h__
9
10
#include "mozilla/GuardObjects.h"
11
#include "mozilla/dom/Nullable.h"
12
#include "jsapi.h"
13
14
namespace mozilla {
15
namespace dom {
16
17
template<typename T>
18
class MOZ_RAII RootedDictionary final : public T,
19
                                         private JS::CustomAutoRooter
20
{
21
public:
22
  template <typename CX>
23
  explicit RootedDictionary(const CX& cx MOZ_GUARD_OBJECT_NOTIFIER_PARAM) :
24
    T(),
25
    JS::CustomAutoRooter(cx MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)
26
0
  {
27
0
  }
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::IteratorResult>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RequestInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ReceiveMessageArgument>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::PopStateEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::MessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ErrorEventInit>::RootedDictionary<JS::RootingContext*>(JS::RootingContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastAudioWorkletNodeOptions>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMIDIMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMediaKeyNeededEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMediaKeyMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::IterableKeyOrValueResult>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::IterableKeyAndValueResult>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastNotificationOptions>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPaymentMethodChangeEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPaymentDetailsInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPaymentValidationErrors>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPopStateEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::PrioEncodedData>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::PromiseDebuggingStateHolder>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPromiseRejectionEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPushEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPushSubscriptionOptionsInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPushSubscriptionInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastRequestInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastSpeechRecognitionEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastHeapSnapshotBoundaries>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastStreamFilterDataEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastTCPSocketEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastUDPMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastWebGPUShaderModuleDescriptor>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastCredentialRequestOptions>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastCredentialCreationOptions>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastCustomEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::L10nKey>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastErrorEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastExtendableMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::FontFaceSetIteratorResult>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaOaepParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaPssParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcdsaParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HmacImportParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaHashedImportParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcKeyImportParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhImportKeyParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::AesDerivedKeyParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HmacDerivedKeyParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HmacKeyGenParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::Pbkdf2Params>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcdhKeyDeriveParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhKeyDeriveParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HkdfParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaHashedKeyAlgorithm>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhKeyAlgorithm>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaHashedKeyGenParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcKeyGenParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhKeyGenParams>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::SpeechRecognitionEventInit>::RootedDictionary<JS::RootingContext*>(JS::RootingContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::NotificationOptions>::RootedDictionary<JS::RootingContext*>(JS::RootingContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::TCPSocketEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::UDPMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::MozSharedMapChangeEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ErrorEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleProfileEvent>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleEvent>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleTimerStart>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleTimerLogOrEnd>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleTimerError>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleCounterError>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleCounter>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ExtendableMessageEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::FetchEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ProfileTimelineStackFrame>::RootedDictionary<JSContext*>(JSContext* const&)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::StreamFilterDataEventInit>::RootedDictionary<JSContext*>(JSContext* const&)
28
29
  virtual void trace(JSTracer *trc) override
30
0
  {
31
0
    this->TraceDictionary(trc);
32
0
  }
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::IteratorResult>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RequestInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ReceiveMessageArgument>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::PopStateEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::MessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ErrorEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastAudioWorkletNodeOptions>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMIDIMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMediaKeyNeededEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMediaKeyMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::IterableKeyOrValueResult>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::IterableKeyAndValueResult>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastNotificationOptions>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPaymentMethodChangeEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPaymentDetailsInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPaymentValidationErrors>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPopStateEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::PrioEncodedData>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::PromiseDebuggingStateHolder>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPromiseRejectionEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPushEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPushSubscriptionOptionsInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastPushSubscriptionInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastRequestInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastSpeechRecognitionEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastHeapSnapshotBoundaries>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastStreamFilterDataEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastTCPSocketEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastUDPMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastWebGPUShaderModuleDescriptor>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastCredentialRequestOptions>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastCredentialCreationOptions>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastCustomEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::L10nKey>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastErrorEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::binding_detail::FastExtendableMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::FontFaceSetIteratorResult>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaOaepParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaPssParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcdsaParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HmacImportParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaHashedImportParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcKeyImportParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhImportKeyParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::AesDerivedKeyParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HmacDerivedKeyParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HmacKeyGenParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::Pbkdf2Params>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcdhKeyDeriveParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhKeyDeriveParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::HkdfParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaHashedKeyAlgorithm>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhKeyAlgorithm>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::RsaHashedKeyGenParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::EcKeyGenParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::DhKeyGenParams>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::SpeechRecognitionEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::NotificationOptions>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::TCPSocketEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::UDPMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::MozSharedMapChangeEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleProfileEvent>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleEvent>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleTimerStart>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleTimerLogOrEnd>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleTimerError>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleCounterError>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ConsoleCounter>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ExtendableMessageEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::FetchEventInit>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::ProfileTimelineStackFrame>::trace(JSTracer*)
Unexecuted instantiation: mozilla::dom::RootedDictionary<mozilla::dom::StreamFilterDataEventInit>::trace(JSTracer*)
33
};
34
35
template<typename T>
36
class MOZ_RAII NullableRootedDictionary final : public Nullable<T>,
37
                                                 private JS::CustomAutoRooter
38
{
39
public:
40
  template <typename CX>
41
  explicit NullableRootedDictionary(const CX& cx MOZ_GUARD_OBJECT_NOTIFIER_PARAM) :
42
    Nullable<T>(),
43
    JS::CustomAutoRooter(cx MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)
44
  {
45
  }
46
47
  virtual void trace(JSTracer *trc) override
48
  {
49
    if (!this->IsNull()) {
50
      this->Value().TraceDictionary(trc);
51
    }
52
  }
53
};
54
55
} // namespace dom
56
} // namespace mozilla
57
58
#endif /* mozilla_dom_RootedDictionary_h__ */