Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/dist/include/mozilla/dom/KeyIdsInitDataBinding.h
Line
Count
Source (jump to first uncovered line)
1
/* THIS FILE IS AUTOGENERATED FROM KeyIdsInitData.webidl BY Codegen.py - DO NOT EDIT */
2
3
#ifndef mozilla_dom_KeyIdsInitDataBinding_h
4
#define mozilla_dom_KeyIdsInitDataBinding_h
5
6
#include "GeckoProfiler.h"
7
#include "js/RootingAPI.h"
8
#include "jspubtd.h"
9
#include "mozilla/ErrorResult.h"
10
#include "mozilla/dom/BindingDeclarations.h"
11
#include "mozilla/dom/Nullable.h"
12
13
namespace mozilla {
14
namespace dom {
15
16
struct KeyIdsInitDataAtoms;
17
struct NativePropertyHooks;
18
class ProtoAndIfaceCache;
19
20
} // namespace dom
21
} // namespace mozilla
22
23
namespace mozilla {
24
namespace dom {
25
26
struct KeyIdsInitData : public DictionaryBase
27
{
28
  MOZ_INIT_OUTSIDE_CTOR Sequence<nsString> mKids;
29
30
  KeyIdsInitData();
31
32
  explicit inline KeyIdsInitData(const FastDictionaryInitializer& )
33
0
  {
34
0
    // Do nothing here; this is used by our "Fast" subclass
35
0
  }
36
37
  explicit inline KeyIdsInitData(const KeyIdsInitData& aOther)
38
0
  {
39
0
    *this = aOther;
40
0
  }
41
42
  bool
43
  Init(JSContext* cx, JS::Handle<JS::Value> val, const char* sourceDescription = "Value", bool passedToJSImpl = false);
44
45
  bool
46
  Init(const nsAString& aJSON);
47
48
  bool
49
  ToObjectInternal(JSContext* cx, JS::MutableHandle<JS::Value> rval) const;
50
51
  bool
52
  ToJSON(nsAString& aJSON) const;
53
54
  void
55
  TraceDictionary(JSTracer* trc);
56
57
  KeyIdsInitData&
58
  operator=(const KeyIdsInitData& aOther);
59
60
private:
61
  static bool
62
  InitIds(JSContext* cx, KeyIdsInitDataAtoms* atomsCache);
63
};
64
65
namespace binding_detail {
66
struct FastKeyIdsInitData : public KeyIdsInitData
67
{
68
  inline FastKeyIdsInitData()
69
    : KeyIdsInitData(FastDictionaryInitializer())
70
0
  {
71
0
    // Doesn't matter what int we pass to the parent constructor
72
0
  }
73
};
74
} // namespace binding_detail
75
76
77
} // namespace dom
78
} // namespace mozilla
79
80
#endif // mozilla_dom_KeyIdsInitDataBinding_h