/work/obj-fuzz/dist/include/nsISimpleEnumerator.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * DO NOT EDIT. THIS FILE IS GENERATED FROM /src/mozilla-central/xpcom/ds/nsISimpleEnumerator.idl |
3 | | */ |
4 | | |
5 | | #ifndef __gen_nsISimpleEnumerator_h__ |
6 | | #define __gen_nsISimpleEnumerator_h__ |
7 | | |
8 | | |
9 | | #ifndef __gen_nsISupports_h__ |
10 | | #include "nsISupports.h" |
11 | | #endif |
12 | | |
13 | | #include "js/Value.h" |
14 | | |
15 | | #include "js/GCAnnotations.h" |
16 | | |
17 | | /* For IDL files that don't want to include root IDL files. */ |
18 | | #ifndef NS_NO_VTABLE |
19 | | #define NS_NO_VTABLE |
20 | | #endif |
21 | | |
22 | | /* starting interface: nsIJSEnumerator */ |
23 | | #define NS_IJSENUMERATOR_IID_STR "4432e8ae-d4d3-42a6-a4d1-829f1c29512b" |
24 | | |
25 | | #define NS_IJSENUMERATOR_IID \ |
26 | | {0x4432e8ae, 0xd4d3, 0x42a6, \ |
27 | | { 0xa4, 0xd1, 0x82, 0x9f, 0x1c, 0x29, 0x51, 0x2b }} |
28 | | |
29 | | class NS_NO_VTABLE nsIJSEnumerator : public nsISupports { |
30 | | public: |
31 | | |
32 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IJSENUMERATOR_IID) |
33 | | |
34 | | /* [symbol] nsIJSEnumerator iterator (); */ |
35 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD Iterator(nsIJSEnumerator **_retval) = 0; |
36 | | |
37 | | /* [implicit_jscontext] jsval next (); */ |
38 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD Next(JSContext* cx, JS::MutableHandleValue _retval) = 0; |
39 | | |
40 | | }; |
41 | | |
42 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIJSEnumerator, NS_IJSENUMERATOR_IID) |
43 | | |
44 | | /* Use this macro when declaring classes that implement this interface. */ |
45 | | #define NS_DECL_NSIJSENUMERATOR \ |
46 | | NS_IMETHOD Iterator(nsIJSEnumerator **_retval) override; \ |
47 | | NS_IMETHOD Next(JSContext* cx, JS::MutableHandleValue _retval) override; |
48 | | |
49 | | /* Use this macro when declaring the members of this interface when the |
50 | | class doesn't implement the interface. This is useful for forwarding. */ |
51 | | #define NS_DECL_NON_VIRTUAL_NSIJSENUMERATOR \ |
52 | | nsresult Iterator(nsIJSEnumerator **_retval); \ |
53 | | nsresult Next(JSContext* cx, JS::MutableHandleValue _retval); |
54 | | |
55 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
56 | | #define NS_FORWARD_NSIJSENUMERATOR(_to) \ |
57 | | NS_IMETHOD Iterator(nsIJSEnumerator **_retval) override { return _to Iterator(_retval); } \ |
58 | | NS_IMETHOD Next(JSContext* cx, JS::MutableHandleValue _retval) override { return _to Next(cx, _retval); } |
59 | | |
60 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
61 | | #define NS_FORWARD_SAFE_NSIJSENUMERATOR(_to) \ |
62 | | NS_IMETHOD Iterator(nsIJSEnumerator **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Iterator(_retval); } \ |
63 | | NS_IMETHOD Next(JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Next(cx, _retval); } |
64 | | |
65 | | |
66 | | /* starting interface: nsISimpleEnumeratorBase */ |
67 | | #define NS_ISIMPLEENUMERATORBASE_IID_STR "796f340d-0a2a-490b-9c60-640765e99782" |
68 | | |
69 | | #define NS_ISIMPLEENUMERATORBASE_IID \ |
70 | | {0x796f340d, 0x0a2a, 0x490b, \ |
71 | | { 0x9c, 0x60, 0x64, 0x07, 0x65, 0xe9, 0x97, 0x82 }} |
72 | | |
73 | | class NS_NO_VTABLE nsISimpleEnumeratorBase : public nsISupports { |
74 | | public: |
75 | | |
76 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISIMPLEENUMERATORBASE_IID) |
77 | | |
78 | | /* [symbol] nsIJSEnumerator iterator (); */ |
79 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD Iterator(nsIJSEnumerator **_retval) = 0; |
80 | | |
81 | | /* nsIJSEnumerator entries (in nsIIDRef aIface); */ |
82 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD Entries(const nsIID & aIface, nsIJSEnumerator **_retval) = 0; |
83 | | |
84 | | }; |
85 | | |
86 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsISimpleEnumeratorBase, NS_ISIMPLEENUMERATORBASE_IID) |
87 | | |
88 | | /* Use this macro when declaring classes that implement this interface. */ |
89 | | #define NS_DECL_NSISIMPLEENUMERATORBASE \ |
90 | | NS_IMETHOD Iterator(nsIJSEnumerator **_retval) override; \ |
91 | | NS_IMETHOD Entries(const nsIID & aIface, nsIJSEnumerator **_retval) override; |
92 | | |
93 | | /* Use this macro when declaring the members of this interface when the |
94 | | class doesn't implement the interface. This is useful for forwarding. */ |
95 | | #define NS_DECL_NON_VIRTUAL_NSISIMPLEENUMERATORBASE \ |
96 | | nsresult Iterator(nsIJSEnumerator **_retval); \ |
97 | | nsresult Entries(const nsIID & aIface, nsIJSEnumerator **_retval); |
98 | | |
99 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
100 | | #define NS_FORWARD_NSISIMPLEENUMERATORBASE(_to) \ |
101 | 0 | NS_IMETHOD Iterator(nsIJSEnumerator **_retval) override { return _to Iterator(_retval); } \ |
102 | 0 | NS_IMETHOD Entries(const nsIID & aIface, nsIJSEnumerator **_retval) override { return _to Entries(aIface, _retval); } |
103 | | |
104 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
105 | | #define NS_FORWARD_SAFE_NSISIMPLEENUMERATORBASE(_to) \ |
106 | | NS_IMETHOD Iterator(nsIJSEnumerator **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Iterator(_retval); } \ |
107 | | NS_IMETHOD Entries(const nsIID & aIface, nsIJSEnumerator **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Entries(aIface, _retval); } |
108 | | |
109 | | |
110 | | /* starting interface: nsISimpleEnumerator */ |
111 | | #define NS_ISIMPLEENUMERATOR_IID_STR "d1899240-f9d2-11d2-bdd6-000064657374" |
112 | | |
113 | | #define NS_ISIMPLEENUMERATOR_IID \ |
114 | | {0xd1899240, 0xf9d2, 0x11d2, \ |
115 | | { 0xbd, 0xd6, 0x00, 0x00, 0x64, 0x65, 0x73, 0x74 }} |
116 | | |
117 | | class NS_NO_VTABLE nsISimpleEnumerator : public nsISimpleEnumeratorBase { |
118 | | public: |
119 | | |
120 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISIMPLEENUMERATOR_IID) |
121 | | |
122 | | /* boolean hasMoreElements (); */ |
123 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD HasMoreElements(bool *_retval) = 0; |
124 | | |
125 | | /* nsISupports getNext (); */ |
126 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetNext(nsISupports **_retval) = 0; |
127 | | |
128 | | }; |
129 | | |
130 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsISimpleEnumerator, NS_ISIMPLEENUMERATOR_IID) |
131 | | |
132 | | /* Use this macro when declaring classes that implement this interface. */ |
133 | | #define NS_DECL_NSISIMPLEENUMERATOR \ |
134 | | NS_IMETHOD HasMoreElements(bool *_retval) override; \ |
135 | | NS_IMETHOD GetNext(nsISupports **_retval) override; |
136 | | |
137 | | /* Use this macro when declaring the members of this interface when the |
138 | | class doesn't implement the interface. This is useful for forwarding. */ |
139 | | #define NS_DECL_NON_VIRTUAL_NSISIMPLEENUMERATOR \ |
140 | | nsresult HasMoreElements(bool *_retval); \ |
141 | | nsresult GetNext(nsISupports **_retval); |
142 | | |
143 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
144 | | #define NS_FORWARD_NSISIMPLEENUMERATOR(_to) \ |
145 | | NS_IMETHOD HasMoreElements(bool *_retval) override { return _to HasMoreElements(_retval); } \ |
146 | | NS_IMETHOD GetNext(nsISupports **_retval) override { return _to GetNext(_retval); } |
147 | | |
148 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
149 | | #define NS_FORWARD_SAFE_NSISIMPLEENUMERATOR(_to) \ |
150 | | NS_IMETHOD HasMoreElements(bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->HasMoreElements(_retval); } \ |
151 | | NS_IMETHOD GetNext(nsISupports **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNext(_retval); } |
152 | | |
153 | | |
154 | | #endif /* __gen_nsISimpleEnumerator_h__ */ |