/work/obj-fuzz/dist/include/xpccomponents.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * DO NOT EDIT. THIS FILE IS GENERATED FROM /src/mozilla-central/js/xpconnect/idl/xpccomponents.idl |
3 | | */ |
4 | | |
5 | | #ifndef __gen_xpccomponents_h__ |
6 | | #define __gen_xpccomponents_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 | | #include "jspubtd.h" |
22 | | class xpcIJSWeakReference; /* forward declaration */ |
23 | | |
24 | | class nsIClassInfo; /* forward declaration */ |
25 | | |
26 | | class nsICommandParams; /* forward declaration */ |
27 | | |
28 | | class nsIComponentManager; /* forward declaration */ |
29 | | |
30 | | class nsICycleCollectorListener; /* forward declaration */ |
31 | | |
32 | | class nsIEditorSpellCheck; /* forward declaration */ |
33 | | |
34 | | class nsIFile; /* forward declaration */ |
35 | | |
36 | | class nsILoadContext; /* forward declaration */ |
37 | | |
38 | | class nsIPersistentProperties; /* forward declaration */ |
39 | | |
40 | | class nsIURI; /* forward declaration */ |
41 | | |
42 | | class nsIJSCID; /* forward declaration */ |
43 | | |
44 | | class nsIJSIID; /* forward declaration */ |
45 | | |
46 | | class nsIPrincipal; /* forward declaration */ |
47 | | |
48 | | class nsIStackFrame; /* forward declaration */ |
49 | | |
50 | | namespace mozilla { |
51 | | namespace dom { |
52 | | class Element; /* webidl Element */ |
53 | | } // namespace dom |
54 | | } // namespace mozilla |
55 | | |
56 | | |
57 | | /* starting interface: nsIXPCComponents_InterfacesByID */ |
58 | | #define NS_IXPCCOMPONENTS_INTERFACESBYID_IID_STR "f235ef76-9919-478b-aa0f-282d994ddf76" |
59 | | |
60 | | #define NS_IXPCCOMPONENTS_INTERFACESBYID_IID \ |
61 | | {0xf235ef76, 0x9919, 0x478b, \ |
62 | | { 0xaa, 0x0f, 0x28, 0x2d, 0x99, 0x4d, 0xdf, 0x76 }} |
63 | | |
64 | | class NS_NO_VTABLE nsIXPCComponents_InterfacesByID : public nsISupports { |
65 | | public: |
66 | | |
67 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_INTERFACESBYID_IID) |
68 | | |
69 | | }; |
70 | | |
71 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_InterfacesByID, NS_IXPCCOMPONENTS_INTERFACESBYID_IID) |
72 | | |
73 | | /* Use this macro when declaring classes that implement this interface. */ |
74 | | #define NS_DECL_NSIXPCCOMPONENTS_INTERFACESBYID \ |
75 | | /* no methods! */ |
76 | | |
77 | | /* Use this macro when declaring the members of this interface when the |
78 | | class doesn't implement the interface. This is useful for forwarding. */ |
79 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_INTERFACESBYID \ |
80 | | /* no methods! */ |
81 | | |
82 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
83 | | #define NS_FORWARD_NSIXPCCOMPONENTS_INTERFACESBYID(_to) \ |
84 | | /* no methods! */ |
85 | | |
86 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
87 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_INTERFACESBYID(_to) \ |
88 | | /* no methods! */ |
89 | | |
90 | | |
91 | | /* starting interface: nsIXPCComponents_Interfaces */ |
92 | | #define NS_IXPCCOMPONENTS_INTERFACES_IID_STR "b8c31bba-79db-4a1d-930d-4cdd68713f9e" |
93 | | |
94 | | #define NS_IXPCCOMPONENTS_INTERFACES_IID \ |
95 | | {0xb8c31bba, 0x79db, 0x4a1d, \ |
96 | | { 0x93, 0x0d, 0x4c, 0xdd, 0x68, 0x71, 0x3f, 0x9e }} |
97 | | |
98 | | class NS_NO_VTABLE nsIXPCComponents_Interfaces : public nsISupports { |
99 | | public: |
100 | | |
101 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_INTERFACES_IID) |
102 | | |
103 | | }; |
104 | | |
105 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Interfaces, NS_IXPCCOMPONENTS_INTERFACES_IID) |
106 | | |
107 | | /* Use this macro when declaring classes that implement this interface. */ |
108 | | #define NS_DECL_NSIXPCCOMPONENTS_INTERFACES \ |
109 | | /* no methods! */ |
110 | | |
111 | | /* Use this macro when declaring the members of this interface when the |
112 | | class doesn't implement the interface. This is useful for forwarding. */ |
113 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_INTERFACES \ |
114 | | /* no methods! */ |
115 | | |
116 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
117 | | #define NS_FORWARD_NSIXPCCOMPONENTS_INTERFACES(_to) \ |
118 | | /* no methods! */ |
119 | | |
120 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
121 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_INTERFACES(_to) \ |
122 | | /* no methods! */ |
123 | | |
124 | | |
125 | | /* starting interface: nsIXPCComponents_Classes */ |
126 | | #define NS_IXPCCOMPONENTS_CLASSES_IID_STR "978ff520-d26c-11d2-9842-006008962422" |
127 | | |
128 | | #define NS_IXPCCOMPONENTS_CLASSES_IID \ |
129 | | {0x978ff520, 0xd26c, 0x11d2, \ |
130 | | { 0x98, 0x42, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }} |
131 | | |
132 | | class NS_NO_VTABLE nsIXPCComponents_Classes : public nsISupports { |
133 | | public: |
134 | | |
135 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_CLASSES_IID) |
136 | | |
137 | | /* void initialize (in nsIJSCID cid, in string idString); */ |
138 | | NS_IMETHOD Initialize(nsIJSCID *cid, const char * idString) = 0; |
139 | | |
140 | | }; |
141 | | |
142 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Classes, NS_IXPCCOMPONENTS_CLASSES_IID) |
143 | | |
144 | | /* Use this macro when declaring classes that implement this interface. */ |
145 | | #define NS_DECL_NSIXPCCOMPONENTS_CLASSES \ |
146 | | NS_IMETHOD Initialize(nsIJSCID *cid, const char * idString) override; |
147 | | |
148 | | /* Use this macro when declaring the members of this interface when the |
149 | | class doesn't implement the interface. This is useful for forwarding. */ |
150 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_CLASSES \ |
151 | | nsresult Initialize(nsIJSCID *cid, const char * idString); |
152 | | |
153 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
154 | | #define NS_FORWARD_NSIXPCCOMPONENTS_CLASSES(_to) \ |
155 | | NS_IMETHOD Initialize(nsIJSCID *cid, const char * idString) override { return _to Initialize(cid, idString); } |
156 | | |
157 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
158 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_CLASSES(_to) \ |
159 | | NS_IMETHOD Initialize(nsIJSCID *cid, const char * idString) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Initialize(cid, idString); } |
160 | | |
161 | | |
162 | | /* starting interface: nsIXPCComponents_ClassesByID */ |
163 | | #define NS_IXPCCOMPONENTS_CLASSESBYID_IID_STR "336a9590-4d19-11d3-9893-006008962422" |
164 | | |
165 | | #define NS_IXPCCOMPONENTS_CLASSESBYID_IID \ |
166 | | {0x336a9590, 0x4d19, 0x11d3, \ |
167 | | { 0x98, 0x93, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }} |
168 | | |
169 | | class NS_NO_VTABLE nsIXPCComponents_ClassesByID : public nsISupports { |
170 | | public: |
171 | | |
172 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_CLASSESBYID_IID) |
173 | | |
174 | | }; |
175 | | |
176 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_ClassesByID, NS_IXPCCOMPONENTS_CLASSESBYID_IID) |
177 | | |
178 | | /* Use this macro when declaring classes that implement this interface. */ |
179 | | #define NS_DECL_NSIXPCCOMPONENTS_CLASSESBYID \ |
180 | | /* no methods! */ |
181 | | |
182 | | /* Use this macro when declaring the members of this interface when the |
183 | | class doesn't implement the interface. This is useful for forwarding. */ |
184 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_CLASSESBYID \ |
185 | | /* no methods! */ |
186 | | |
187 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
188 | | #define NS_FORWARD_NSIXPCCOMPONENTS_CLASSESBYID(_to) \ |
189 | | /* no methods! */ |
190 | | |
191 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
192 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_CLASSESBYID(_to) \ |
193 | | /* no methods! */ |
194 | | |
195 | | |
196 | | /* starting interface: nsIXPCComponents_Results */ |
197 | | #define NS_IXPCCOMPONENTS_RESULTS_IID_STR "2fc229a0-5860-11d3-9899-006008962422" |
198 | | |
199 | | #define NS_IXPCCOMPONENTS_RESULTS_IID \ |
200 | | {0x2fc229a0, 0x5860, 0x11d3, \ |
201 | | { 0x98, 0x99, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }} |
202 | | |
203 | | class NS_NO_VTABLE nsIXPCComponents_Results : public nsISupports { |
204 | | public: |
205 | | |
206 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_RESULTS_IID) |
207 | | |
208 | | }; |
209 | | |
210 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Results, NS_IXPCCOMPONENTS_RESULTS_IID) |
211 | | |
212 | | /* Use this macro when declaring classes that implement this interface. */ |
213 | | #define NS_DECL_NSIXPCCOMPONENTS_RESULTS \ |
214 | | /* no methods! */ |
215 | | |
216 | | /* Use this macro when declaring the members of this interface when the |
217 | | class doesn't implement the interface. This is useful for forwarding. */ |
218 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_RESULTS \ |
219 | | /* no methods! */ |
220 | | |
221 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
222 | | #define NS_FORWARD_NSIXPCCOMPONENTS_RESULTS(_to) \ |
223 | | /* no methods! */ |
224 | | |
225 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
226 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_RESULTS(_to) \ |
227 | | /* no methods! */ |
228 | | |
229 | | |
230 | | /* starting interface: nsIXPCComponents_ID */ |
231 | | #define NS_IXPCCOMPONENTS_ID_IID_STR "7994a6e0-e028-11d3-8f5d-0010a4e73d9a" |
232 | | |
233 | | #define NS_IXPCCOMPONENTS_ID_IID \ |
234 | | {0x7994a6e0, 0xe028, 0x11d3, \ |
235 | | { 0x8f, 0x5d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }} |
236 | | |
237 | | class NS_NO_VTABLE nsIXPCComponents_ID : public nsISupports { |
238 | | public: |
239 | | |
240 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_ID_IID) |
241 | | |
242 | | }; |
243 | | |
244 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_ID, NS_IXPCCOMPONENTS_ID_IID) |
245 | | |
246 | | /* Use this macro when declaring classes that implement this interface. */ |
247 | | #define NS_DECL_NSIXPCCOMPONENTS_ID \ |
248 | | /* no methods! */ |
249 | | |
250 | | /* Use this macro when declaring the members of this interface when the |
251 | | class doesn't implement the interface. This is useful for forwarding. */ |
252 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_ID \ |
253 | | /* no methods! */ |
254 | | |
255 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
256 | | #define NS_FORWARD_NSIXPCCOMPONENTS_ID(_to) \ |
257 | | /* no methods! */ |
258 | | |
259 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
260 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_ID(_to) \ |
261 | | /* no methods! */ |
262 | | |
263 | | |
264 | | /* starting interface: nsIXPCComponents_Exception */ |
265 | | #define NS_IXPCCOMPONENTS_EXCEPTION_IID_STR "5bf039c0-e028-11d3-8f5d-0010a4e73d9a" |
266 | | |
267 | | #define NS_IXPCCOMPONENTS_EXCEPTION_IID \ |
268 | | {0x5bf039c0, 0xe028, 0x11d3, \ |
269 | | { 0x8f, 0x5d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }} |
270 | | |
271 | | class NS_NO_VTABLE nsIXPCComponents_Exception : public nsISupports { |
272 | | public: |
273 | | |
274 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_EXCEPTION_IID) |
275 | | |
276 | | }; |
277 | | |
278 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Exception, NS_IXPCCOMPONENTS_EXCEPTION_IID) |
279 | | |
280 | | /* Use this macro when declaring classes that implement this interface. */ |
281 | | #define NS_DECL_NSIXPCCOMPONENTS_EXCEPTION \ |
282 | | /* no methods! */ |
283 | | |
284 | | /* Use this macro when declaring the members of this interface when the |
285 | | class doesn't implement the interface. This is useful for forwarding. */ |
286 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_EXCEPTION \ |
287 | | /* no methods! */ |
288 | | |
289 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
290 | | #define NS_FORWARD_NSIXPCCOMPONENTS_EXCEPTION(_to) \ |
291 | | /* no methods! */ |
292 | | |
293 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
294 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_EXCEPTION(_to) \ |
295 | | /* no methods! */ |
296 | | |
297 | | |
298 | | /* starting interface: nsIXPCComponents_Constructor */ |
299 | | #define NS_IXPCCOMPONENTS_CONSTRUCTOR_IID_STR "88655640-e028-11d3-8f5d-0010a4e73d9a" |
300 | | |
301 | | #define NS_IXPCCOMPONENTS_CONSTRUCTOR_IID \ |
302 | | {0x88655640, 0xe028, 0x11d3, \ |
303 | | { 0x8f, 0x5d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }} |
304 | | |
305 | | class NS_NO_VTABLE nsIXPCComponents_Constructor : public nsISupports { |
306 | | public: |
307 | | |
308 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_CONSTRUCTOR_IID) |
309 | | |
310 | | }; |
311 | | |
312 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Constructor, NS_IXPCCOMPONENTS_CONSTRUCTOR_IID) |
313 | | |
314 | | /* Use this macro when declaring classes that implement this interface. */ |
315 | | #define NS_DECL_NSIXPCCOMPONENTS_CONSTRUCTOR \ |
316 | | /* no methods! */ |
317 | | |
318 | | /* Use this macro when declaring the members of this interface when the |
319 | | class doesn't implement the interface. This is useful for forwarding. */ |
320 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_CONSTRUCTOR \ |
321 | | /* no methods! */ |
322 | | |
323 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
324 | | #define NS_FORWARD_NSIXPCCOMPONENTS_CONSTRUCTOR(_to) \ |
325 | | /* no methods! */ |
326 | | |
327 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
328 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_CONSTRUCTOR(_to) \ |
329 | | /* no methods! */ |
330 | | |
331 | | |
332 | | /* starting interface: nsIXPCConstructor */ |
333 | | #define NS_IXPCCONSTRUCTOR_IID_STR "c814ca20-e0dc-11d3-8f5f-0010a4e73d9a" |
334 | | |
335 | | #define NS_IXPCCONSTRUCTOR_IID \ |
336 | | {0xc814ca20, 0xe0dc, 0x11d3, \ |
337 | | { 0x8f, 0x5f, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }} |
338 | | |
339 | | class NS_NO_VTABLE nsIXPCConstructor : public nsISupports { |
340 | | public: |
341 | | |
342 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCONSTRUCTOR_IID) |
343 | | |
344 | | /* readonly attribute nsIJSCID classID; */ |
345 | | NS_IMETHOD GetClassID(nsIJSCID **aClassID) = 0; |
346 | | |
347 | | /* readonly attribute nsIJSIID interfaceID; */ |
348 | | NS_IMETHOD GetInterfaceID(nsIJSIID **aInterfaceID) = 0; |
349 | | |
350 | | /* readonly attribute string initializer; */ |
351 | | NS_IMETHOD GetInitializer(char * *aInitializer) = 0; |
352 | | |
353 | | }; |
354 | | |
355 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCConstructor, NS_IXPCCONSTRUCTOR_IID) |
356 | | |
357 | | /* Use this macro when declaring classes that implement this interface. */ |
358 | | #define NS_DECL_NSIXPCCONSTRUCTOR \ |
359 | | NS_IMETHOD GetClassID(nsIJSCID **aClassID) override; \ |
360 | | NS_IMETHOD GetInterfaceID(nsIJSIID **aInterfaceID) override; \ |
361 | | NS_IMETHOD GetInitializer(char * *aInitializer) override; |
362 | | |
363 | | /* Use this macro when declaring the members of this interface when the |
364 | | class doesn't implement the interface. This is useful for forwarding. */ |
365 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCONSTRUCTOR \ |
366 | | nsresult GetClassID(nsIJSCID **aClassID); \ |
367 | | nsresult GetInterfaceID(nsIJSIID **aInterfaceID); \ |
368 | | nsresult GetInitializer(char * *aInitializer); |
369 | | |
370 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
371 | | #define NS_FORWARD_NSIXPCCONSTRUCTOR(_to) \ |
372 | | NS_IMETHOD GetClassID(nsIJSCID **aClassID) override { return _to GetClassID(aClassID); } \ |
373 | | NS_IMETHOD GetInterfaceID(nsIJSIID **aInterfaceID) override { return _to GetInterfaceID(aInterfaceID); } \ |
374 | | NS_IMETHOD GetInitializer(char * *aInitializer) override { return _to GetInitializer(aInitializer); } |
375 | | |
376 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
377 | | #define NS_FORWARD_SAFE_NSIXPCCONSTRUCTOR(_to) \ |
378 | | NS_IMETHOD GetClassID(nsIJSCID **aClassID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassID(aClassID); } \ |
379 | | NS_IMETHOD GetInterfaceID(nsIJSIID **aInterfaceID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaceID(aInterfaceID); } \ |
380 | | NS_IMETHOD GetInitializer(char * *aInitializer) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInitializer(aInitializer); } |
381 | | |
382 | | |
383 | | /* starting interface: nsIXPCComponents_utils_Sandbox */ |
384 | | #define NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID_STR "4f8ae0dc-d266-4a32-875b-6a9de71a8ce9" |
385 | | |
386 | | #define NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID \ |
387 | | {0x4f8ae0dc, 0xd266, 0x4a32, \ |
388 | | { 0x87, 0x5b, 0x6a, 0x9d, 0xe7, 0x1a, 0x8c, 0xe9 }} |
389 | | |
390 | | class NS_NO_VTABLE nsIXPCComponents_utils_Sandbox : public nsISupports { |
391 | | public: |
392 | | |
393 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID) |
394 | | |
395 | | }; |
396 | | |
397 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_utils_Sandbox, NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID) |
398 | | |
399 | | /* Use this macro when declaring classes that implement this interface. */ |
400 | | #define NS_DECL_NSIXPCCOMPONENTS_UTILS_SANDBOX \ |
401 | | /* no methods! */ |
402 | | |
403 | | /* Use this macro when declaring the members of this interface when the |
404 | | class doesn't implement the interface. This is useful for forwarding. */ |
405 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_UTILS_SANDBOX \ |
406 | | /* no methods! */ |
407 | | |
408 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
409 | | #define NS_FORWARD_NSIXPCCOMPONENTS_UTILS_SANDBOX(_to) \ |
410 | | /* no methods! */ |
411 | | |
412 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
413 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_UTILS_SANDBOX(_to) \ |
414 | | /* no methods! */ |
415 | | |
416 | | |
417 | | /* starting interface: ScheduledGCCallback */ |
418 | | #define SCHEDULEDGCCALLBACK_IID_STR "71000535-b0fd-44d1-8ce0-909760e3953c" |
419 | | |
420 | | #define SCHEDULEDGCCALLBACK_IID \ |
421 | | {0x71000535, 0xb0fd, 0x44d1, \ |
422 | | { 0x8c, 0xe0, 0x90, 0x97, 0x60, 0xe3, 0x95, 0x3c }} |
423 | | |
424 | | class NS_NO_VTABLE ScheduledGCCallback : public nsISupports { |
425 | | public: |
426 | | |
427 | | NS_DECLARE_STATIC_IID_ACCESSOR(SCHEDULEDGCCALLBACK_IID) |
428 | | |
429 | | /* void callback (); */ |
430 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD Callback(void) = 0; |
431 | | |
432 | | }; |
433 | | |
434 | | NS_DEFINE_STATIC_IID_ACCESSOR(ScheduledGCCallback, SCHEDULEDGCCALLBACK_IID) |
435 | | |
436 | | /* Use this macro when declaring classes that implement this interface. */ |
437 | | #define NS_DECL_SCHEDULEDGCCALLBACK \ |
438 | | NS_IMETHOD Callback(void) override; |
439 | | |
440 | | /* Use this macro when declaring the members of this interface when the |
441 | | class doesn't implement the interface. This is useful for forwarding. */ |
442 | | #define NS_DECL_NON_VIRTUAL_SCHEDULEDGCCALLBACK \ |
443 | | nsresult Callback(void); |
444 | | |
445 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
446 | | #define NS_FORWARD_SCHEDULEDGCCALLBACK(_to) \ |
447 | | NS_IMETHOD Callback(void) override { return _to Callback(); } |
448 | | |
449 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
450 | | #define NS_FORWARD_SAFE_SCHEDULEDGCCALLBACK(_to) \ |
451 | | NS_IMETHOD Callback(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Callback(); } |
452 | | |
453 | | |
454 | | /* starting interface: nsIBlockThreadedExecutionCallback */ |
455 | | #define NS_IBLOCKTHREADEDEXECUTIONCALLBACK_IID_STR "c3b85a5c-c328-47d4-aaaf-384c4ff9d77d" |
456 | | |
457 | | #define NS_IBLOCKTHREADEDEXECUTIONCALLBACK_IID \ |
458 | | {0xc3b85a5c, 0xc328, 0x47d4, \ |
459 | | { 0xaa, 0xaf, 0x38, 0x4c, 0x4f, 0xf9, 0xd7, 0x7d }} |
460 | | |
461 | | class NS_NO_VTABLE nsIBlockThreadedExecutionCallback : public nsISupports { |
462 | | public: |
463 | | |
464 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IBLOCKTHREADEDEXECUTIONCALLBACK_IID) |
465 | | |
466 | | /* void callback (); */ |
467 | | JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD Callback(void) = 0; |
468 | | |
469 | | }; |
470 | | |
471 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIBlockThreadedExecutionCallback, NS_IBLOCKTHREADEDEXECUTIONCALLBACK_IID) |
472 | | |
473 | | /* Use this macro when declaring classes that implement this interface. */ |
474 | | #define NS_DECL_NSIBLOCKTHREADEDEXECUTIONCALLBACK \ |
475 | | NS_IMETHOD Callback(void) override; |
476 | | |
477 | | /* Use this macro when declaring the members of this interface when the |
478 | | class doesn't implement the interface. This is useful for forwarding. */ |
479 | | #define NS_DECL_NON_VIRTUAL_NSIBLOCKTHREADEDEXECUTIONCALLBACK \ |
480 | | nsresult Callback(void); |
481 | | |
482 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
483 | | #define NS_FORWARD_NSIBLOCKTHREADEDEXECUTIONCALLBACK(_to) \ |
484 | | NS_IMETHOD Callback(void) override { return _to Callback(); } |
485 | | |
486 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
487 | | #define NS_FORWARD_SAFE_NSIBLOCKTHREADEDEXECUTIONCALLBACK(_to) \ |
488 | | NS_IMETHOD Callback(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Callback(); } |
489 | | |
490 | | |
491 | | /* starting interface: nsIXPCComponents_Utils */ |
492 | | #define NS_IXPCCOMPONENTS_UTILS_IID_STR "86003fe3-ee9a-4620-91dc-eef8b1e58815" |
493 | | |
494 | | #define NS_IXPCCOMPONENTS_UTILS_IID \ |
495 | | {0x86003fe3, 0xee9a, 0x4620, \ |
496 | | { 0x91, 0xdc, 0xee, 0xf8, 0xb1, 0xe5, 0x88, 0x15 }} |
497 | | |
498 | | class NS_NO_VTABLE nsIXPCComponents_Utils : public nsISupports { |
499 | | public: |
500 | | |
501 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_UTILS_IID) |
502 | | |
503 | | /* [implicit_jscontext] void reportError (in jsval error, [optional] in jsval stack); */ |
504 | | NS_IMETHOD ReportError(JS::HandleValue error, JS::HandleValue stack, JSContext* cx) = 0; |
505 | | |
506 | | /* readonly attribute nsIXPCComponents_utils_Sandbox Sandbox; */ |
507 | | NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox **aSandbox) = 0; |
508 | | |
509 | | /* [implicit_jscontext,optional_argc] jsval evalInSandbox (in AString source, in jsval sandbox, [optional] in jsval version, [optional] in AUTF8String filename, [optional] in long lineNo); */ |
510 | | NS_IMETHOD EvalInSandbox(const nsAString& source, JS::HandleValue sandbox, JS::HandleValue version, const nsACString& filename, int32_t lineNo, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) = 0; |
511 | | |
512 | | /* [implicit_jscontext] jsval getUAWidgetScope (in nsIPrincipal principal); */ |
513 | | NS_IMETHOD GetUAWidgetScope(nsIPrincipal *principal, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
514 | | |
515 | | /* [implicit_jscontext] jsval getSandboxMetadata (in jsval sandbox); */ |
516 | | NS_IMETHOD GetSandboxMetadata(JS::HandleValue sandbox, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
517 | | |
518 | | /* [implicit_jscontext] void setSandboxMetadata (in jsval sandbox, in jsval metadata); */ |
519 | | NS_IMETHOD SetSandboxMetadata(JS::HandleValue sandbox, JS::HandleValue metadata, JSContext* cx) = 0; |
520 | | |
521 | | /* [implicit_jscontext,optional_argc] jsval import (in AUTF8String aResourceURI, [optional] in jsval targetObj); */ |
522 | | NS_IMETHOD Import(const nsACString& aResourceURI, JS::HandleValue targetObj, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) = 0; |
523 | | |
524 | | /* boolean isModuleLoaded (in AUTF8String aResourceURI); */ |
525 | | NS_IMETHOD IsModuleLoaded(const nsACString& aResourceURI, bool *_retval) = 0; |
526 | | |
527 | | /* void unload (in AUTF8String registryLocation); */ |
528 | | NS_IMETHOD Unload(const nsACString& registryLocation) = 0; |
529 | | |
530 | | /* [implicit_jscontext] void importGlobalProperties (in jsval aPropertyList); */ |
531 | | NS_IMETHOD ImportGlobalProperties(JS::HandleValue aPropertyList, JSContext* cx) = 0; |
532 | | |
533 | | /* [implicit_jscontext] xpcIJSWeakReference getWeakReference (in jsval obj); */ |
534 | | NS_IMETHOD GetWeakReference(JS::HandleValue obj, JSContext* cx, xpcIJSWeakReference **_retval) = 0; |
535 | | |
536 | | /* void forceGC (); */ |
537 | | NS_IMETHOD ForceGC(void) = 0; |
538 | | |
539 | | /* void forceCC ([optional] in nsICycleCollectorListener aListener); */ |
540 | | NS_IMETHOD ForceCC(nsICycleCollectorListener *aListener) = 0; |
541 | | |
542 | | /* nsICycleCollectorListener createCCLogger (); */ |
543 | | NS_IMETHOD CreateCCLogger(nsICycleCollectorListener **_retval) = 0; |
544 | | |
545 | | /* void finishCC (); */ |
546 | | NS_IMETHOD FinishCC(void) = 0; |
547 | | |
548 | | /* void ccSlice (in long long budget); */ |
549 | | NS_IMETHOD CcSlice(int64_t budget) = 0; |
550 | | |
551 | | /* long getMaxCCSliceTimeSinceClear (); */ |
552 | | NS_IMETHOD GetMaxCCSliceTimeSinceClear(int32_t *_retval) = 0; |
553 | | |
554 | | /* void clearMaxCCTime (); */ |
555 | | NS_IMETHOD ClearMaxCCTime(void) = 0; |
556 | | |
557 | | /* void forceShrinkingGC (); */ |
558 | | NS_IMETHOD ForceShrinkingGC(void) = 0; |
559 | | |
560 | | /* void schedulePreciseGC (in ScheduledGCCallback callback); */ |
561 | | NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback) = 0; |
562 | | |
563 | | /* void schedulePreciseShrinkingGC (in ScheduledGCCallback callback); */ |
564 | | NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback) = 0; |
565 | | |
566 | | /* void unlinkGhostWindows (); */ |
567 | | NS_IMETHOD UnlinkGhostWindows(void) = 0; |
568 | | |
569 | | /* [implicit_jscontext] jsval getJSTestingFunctions (); */ |
570 | | NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::MutableHandleValue _retval) = 0; |
571 | | |
572 | | /* [implicit_jscontext] jsval callFunctionWithAsyncStack (in jsval function, in nsIStackFrame stack, in AString asyncCause); */ |
573 | | NS_IMETHOD CallFunctionWithAsyncStack(JS::HandleValue function, nsIStackFrame *stack, const nsAString& asyncCause, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
574 | | |
575 | | /* [implicit_jscontext] jsval getGlobalForObject (in jsval obj); */ |
576 | | NS_IMETHOD GetGlobalForObject(JS::HandleValue obj, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
577 | | |
578 | | /* [implicit_jscontext] boolean isProxy (in jsval vobject); */ |
579 | | NS_IMETHOD IsProxy(JS::HandleValue vobject, JSContext* cx, bool *_retval) = 0; |
580 | | |
581 | | /* [implicit_jscontext] jsval exportFunction (in jsval vfunction, in jsval vscope, [optional] in jsval voptions); */ |
582 | | NS_IMETHOD ExportFunction(JS::HandleValue vfunction, JS::HandleValue vscope, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
583 | | |
584 | | /* [implicit_jscontext] jsval createObjectIn (in jsval vobj, [optional] in jsval voptions); */ |
585 | | NS_IMETHOD CreateObjectIn(JS::HandleValue vobj, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
586 | | |
587 | | /* [implicit_jscontext] void makeObjectPropsNormal (in jsval vobj); */ |
588 | | NS_IMETHOD MakeObjectPropsNormal(JS::HandleValue vobj, JSContext* cx) = 0; |
589 | | |
590 | | /* bool isDeadWrapper (in jsval obj); */ |
591 | | NS_IMETHOD IsDeadWrapper(JS::HandleValue obj, bool *_retval) = 0; |
592 | | |
593 | | /* bool isCrossProcessWrapper (in jsval obj); */ |
594 | | NS_IMETHOD IsCrossProcessWrapper(JS::HandleValue obj, bool *_retval) = 0; |
595 | | |
596 | | /* ACString getCrossProcessWrapperTag (in jsval obj); */ |
597 | | NS_IMETHOD GetCrossProcessWrapperTag(JS::HandleValue obj, nsACString& _retval) = 0; |
598 | | |
599 | | /* void permitCPOWsInScope (in jsval obj); */ |
600 | | NS_IMETHOD PermitCPOWsInScope(JS::HandleValue obj) = 0; |
601 | | |
602 | | /* [implicit_jscontext] void recomputeWrappers ([optional] in jsval vobj); */ |
603 | | NS_IMETHOD RecomputeWrappers(JS::HandleValue vobj, JSContext* cx) = 0; |
604 | | |
605 | | /* [implicit_jscontext] void setWantXrays (in jsval vscope); */ |
606 | | NS_IMETHOD SetWantXrays(JS::HandleValue vscope, JSContext* cx) = 0; |
607 | | |
608 | | /* [implicit_jscontext] void forcePermissiveCOWs (); */ |
609 | | NS_IMETHOD ForcePermissiveCOWs(JSContext* cx) = 0; |
610 | | |
611 | | /* [implicit_jscontext] void dispatch (in jsval runnable, [optional] in jsval scope); */ |
612 | | NS_IMETHOD Dispatch(JS::HandleValue runnable, JS::HandleValue scope, JSContext* cx) = 0; |
613 | | |
614 | | /* [implicit_jscontext] attribute boolean strict; */ |
615 | | NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) = 0; |
616 | | NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) = 0; |
617 | | |
618 | | /* [implicit_jscontext] attribute boolean werror; */ |
619 | | NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) = 0; |
620 | | NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) = 0; |
621 | | |
622 | | /* [implicit_jscontext] attribute boolean strict_mode; */ |
623 | | NS_IMETHOD GetStrict_mode(JSContext* cx, bool *aStrict_mode) = 0; |
624 | | NS_IMETHOD SetStrict_mode(JSContext* cx, bool aStrict_mode) = 0; |
625 | | |
626 | | /* [implicit_jscontext] attribute boolean ion; */ |
627 | | NS_IMETHOD GetIon(JSContext* cx, bool *aIon) = 0; |
628 | | NS_IMETHOD SetIon(JSContext* cx, bool aIon) = 0; |
629 | | |
630 | | /* readonly attribute boolean isInAutomation; */ |
631 | | NS_IMETHOD GetIsInAutomation(bool *aIsInAutomation) = 0; |
632 | | |
633 | | /* void crashIfNotInAutomation (); */ |
634 | | NS_IMETHOD CrashIfNotInAutomation(void) = 0; |
635 | | |
636 | | /* [implicit_jscontext] void setGCZeal (in long zeal); */ |
637 | | NS_IMETHOD SetGCZeal(int32_t zeal, JSContext* cx) = 0; |
638 | | |
639 | | /* [implicit_jscontext] void nukeSandbox (in jsval obj); */ |
640 | | NS_IMETHOD NukeSandbox(JS::HandleValue obj, JSContext* cx) = 0; |
641 | | |
642 | | /* [implicit_jscontext] void blockScriptForGlobal (in jsval global); */ |
643 | | NS_IMETHOD BlockScriptForGlobal(JS::HandleValue global, JSContext* cx) = 0; |
644 | | |
645 | | /* [implicit_jscontext] void unblockScriptForGlobal (in jsval global); */ |
646 | | NS_IMETHOD UnblockScriptForGlobal(JS::HandleValue global, JSContext* cx) = 0; |
647 | | |
648 | | /* bool isXrayWrapper (in jsval obj); */ |
649 | | NS_IMETHOD IsXrayWrapper(JS::HandleValue obj, bool *_retval) = 0; |
650 | | |
651 | | /* [implicit_jscontext] jsval waiveXrays (in jsval aVal); */ |
652 | | NS_IMETHOD WaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
653 | | |
654 | | /* [implicit_jscontext] jsval unwaiveXrays (in jsval aVal); */ |
655 | | NS_IMETHOD UnwaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
656 | | |
657 | | /* [implicit_jscontext] string getClassName (in jsval aObj, in bool aUnwrap); */ |
658 | | NS_IMETHOD GetClassName(JS::HandleValue aObj, bool aUnwrap, JSContext* cx, char * *_retval) = 0; |
659 | | |
660 | | /* nsIClassInfo getDOMClassInfo (in AString aClassName); */ |
661 | | NS_IMETHOD GetDOMClassInfo(const nsAString& aClassName, nsIClassInfo **_retval) = 0; |
662 | | |
663 | | /* [implicit_jscontext] jsval getIncumbentGlobal ([optional] in jsval callback); */ |
664 | | NS_IMETHOD GetIncumbentGlobal(JS::HandleValue callback, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
665 | | |
666 | | /* [implicit_jscontext] nsISupports generateXPCWrappedJS (in jsval obj, [optional] in jsval scope); */ |
667 | | NS_IMETHOD GenerateXPCWrappedJS(JS::HandleValue obj, JS::HandleValue scope, JSContext* cx, nsISupports **_retval) = 0; |
668 | | |
669 | | /* PRTime getWatchdogTimestamp (in AString aCategory); */ |
670 | | NS_IMETHOD GetWatchdogTimestamp(const nsAString& aCategory, PRTime *_retval) = 0; |
671 | | |
672 | | /* [implicit_jscontext] jsval getJSEngineTelemetryValue (); */ |
673 | | NS_IMETHOD GetJSEngineTelemetryValue(JSContext* cx, JS::MutableHandleValue _retval) = 0; |
674 | | |
675 | | /* [implicit_jscontext] jsval cloneInto (in jsval value, in jsval scope, [optional] in jsval options); */ |
676 | | NS_IMETHOD CloneInto(JS::HandleValue value, JS::HandleValue scope, JS::HandleValue options, JSContext* cx, JS::MutableHandleValue _retval) = 0; |
677 | | |
678 | | /* nsIPrincipal getWebIDLCallerPrincipal (); */ |
679 | | NS_IMETHOD GetWebIDLCallerPrincipal(nsIPrincipal **_retval) = 0; |
680 | | |
681 | | /* [implicit_jscontext] nsIPrincipal getObjectPrincipal (in jsval obj); */ |
682 | | NS_IMETHOD GetObjectPrincipal(JS::HandleValue obj, JSContext* cx, nsIPrincipal **_retval) = 0; |
683 | | |
684 | | /* [implicit_jscontext] ACString getRealmLocation (in jsval obj); */ |
685 | | NS_IMETHOD GetRealmLocation(JS::HandleValue obj, JSContext* cx, nsACString& _retval) = 0; |
686 | | |
687 | | /* double now (); */ |
688 | | NS_IMETHOD Now(double *_retval) = 0; |
689 | | |
690 | | /* AUTF8String readUTF8File (in nsIFile file); */ |
691 | | NS_IMETHOD ReadUTF8File(nsIFile *file, nsACString& _retval) = 0; |
692 | | |
693 | | /* AUTF8String readUTF8URI (in nsIURI url); */ |
694 | | NS_IMETHOD ReadUTF8URI(nsIURI *url, nsACString& _retval) = 0; |
695 | | |
696 | | /* void blockThreadedExecution (in nsIBlockThreadedExecutionCallback aBlockedCallback); */ |
697 | | NS_IMETHOD BlockThreadedExecution(nsIBlockThreadedExecutionCallback *aBlockedCallback) = 0; |
698 | | |
699 | | /* void unblockThreadedExecution (); */ |
700 | | NS_IMETHOD UnblockThreadedExecution(void) = 0; |
701 | | |
702 | | /* void recordReplayDirective (in long directive); */ |
703 | | NS_IMETHOD RecordReplayDirective(int32_t directive) = 0; |
704 | | |
705 | | /* nsIEditorSpellCheck createSpellChecker (); */ |
706 | | NS_IMETHOD CreateSpellChecker(nsIEditorSpellCheck **_retval) = 0; |
707 | | |
708 | | /* nsISupports createCommandLine (); */ |
709 | | NS_IMETHOD CreateCommandLine(nsISupports **_retval) = 0; |
710 | | |
711 | | /* nsICommandParams createCommandParams (); */ |
712 | | NS_IMETHOD CreateCommandParams(nsICommandParams **_retval) = 0; |
713 | | |
714 | | /* nsILoadContext createLoadContext (); */ |
715 | | NS_IMETHOD CreateLoadContext(nsILoadContext **_retval) = 0; |
716 | | |
717 | | /* nsILoadContext createPrivateLoadContext (); */ |
718 | | NS_IMETHOD CreatePrivateLoadContext(nsILoadContext **_retval) = 0; |
719 | | |
720 | | /* nsIPersistentProperties createPersistentProperties (); */ |
721 | | NS_IMETHOD CreatePersistentProperties(nsIPersistentProperties **_retval) = 0; |
722 | | |
723 | | }; |
724 | | |
725 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Utils, NS_IXPCCOMPONENTS_UTILS_IID) |
726 | | |
727 | | /* Use this macro when declaring classes that implement this interface. */ |
728 | | #define NS_DECL_NSIXPCCOMPONENTS_UTILS \ |
729 | | NS_IMETHOD ReportError(JS::HandleValue error, JS::HandleValue stack, JSContext* cx) override; \ |
730 | | NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox **aSandbox) override; \ |
731 | | NS_IMETHOD EvalInSandbox(const nsAString& source, JS::HandleValue sandbox, JS::HandleValue version, const nsACString& filename, int32_t lineNo, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override; \ |
732 | | NS_IMETHOD GetUAWidgetScope(nsIPrincipal *principal, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
733 | | NS_IMETHOD GetSandboxMetadata(JS::HandleValue sandbox, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
734 | | NS_IMETHOD SetSandboxMetadata(JS::HandleValue sandbox, JS::HandleValue metadata, JSContext* cx) override; \ |
735 | | NS_IMETHOD Import(const nsACString& aResourceURI, JS::HandleValue targetObj, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override; \ |
736 | | NS_IMETHOD IsModuleLoaded(const nsACString& aResourceURI, bool *_retval) override; \ |
737 | | NS_IMETHOD Unload(const nsACString& registryLocation) override; \ |
738 | | NS_IMETHOD ImportGlobalProperties(JS::HandleValue aPropertyList, JSContext* cx) override; \ |
739 | | NS_IMETHOD GetWeakReference(JS::HandleValue obj, JSContext* cx, xpcIJSWeakReference **_retval) override; \ |
740 | | NS_IMETHOD ForceGC(void) override; \ |
741 | | NS_IMETHOD ForceCC(nsICycleCollectorListener *aListener) override; \ |
742 | | NS_IMETHOD CreateCCLogger(nsICycleCollectorListener **_retval) override; \ |
743 | | NS_IMETHOD FinishCC(void) override; \ |
744 | | NS_IMETHOD CcSlice(int64_t budget) override; \ |
745 | | NS_IMETHOD GetMaxCCSliceTimeSinceClear(int32_t *_retval) override; \ |
746 | | NS_IMETHOD ClearMaxCCTime(void) override; \ |
747 | | NS_IMETHOD ForceShrinkingGC(void) override; \ |
748 | | NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback) override; \ |
749 | | NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback) override; \ |
750 | | NS_IMETHOD UnlinkGhostWindows(void) override; \ |
751 | | NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::MutableHandleValue _retval) override; \ |
752 | | NS_IMETHOD CallFunctionWithAsyncStack(JS::HandleValue function, nsIStackFrame *stack, const nsAString& asyncCause, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
753 | | NS_IMETHOD GetGlobalForObject(JS::HandleValue obj, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
754 | | NS_IMETHOD IsProxy(JS::HandleValue vobject, JSContext* cx, bool *_retval) override; \ |
755 | | NS_IMETHOD ExportFunction(JS::HandleValue vfunction, JS::HandleValue vscope, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
756 | | NS_IMETHOD CreateObjectIn(JS::HandleValue vobj, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
757 | | NS_IMETHOD MakeObjectPropsNormal(JS::HandleValue vobj, JSContext* cx) override; \ |
758 | | NS_IMETHOD IsDeadWrapper(JS::HandleValue obj, bool *_retval) override; \ |
759 | | NS_IMETHOD IsCrossProcessWrapper(JS::HandleValue obj, bool *_retval) override; \ |
760 | | NS_IMETHOD GetCrossProcessWrapperTag(JS::HandleValue obj, nsACString& _retval) override; \ |
761 | | NS_IMETHOD PermitCPOWsInScope(JS::HandleValue obj) override; \ |
762 | | NS_IMETHOD RecomputeWrappers(JS::HandleValue vobj, JSContext* cx) override; \ |
763 | | NS_IMETHOD SetWantXrays(JS::HandleValue vscope, JSContext* cx) override; \ |
764 | | NS_IMETHOD ForcePermissiveCOWs(JSContext* cx) override; \ |
765 | | NS_IMETHOD Dispatch(JS::HandleValue runnable, JS::HandleValue scope, JSContext* cx) override; \ |
766 | | NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) override; \ |
767 | | NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) override; \ |
768 | | NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) override; \ |
769 | | NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) override; \ |
770 | | NS_IMETHOD GetStrict_mode(JSContext* cx, bool *aStrict_mode) override; \ |
771 | | NS_IMETHOD SetStrict_mode(JSContext* cx, bool aStrict_mode) override; \ |
772 | | NS_IMETHOD GetIon(JSContext* cx, bool *aIon) override; \ |
773 | | NS_IMETHOD SetIon(JSContext* cx, bool aIon) override; \ |
774 | | NS_IMETHOD GetIsInAutomation(bool *aIsInAutomation) override; \ |
775 | | NS_IMETHOD CrashIfNotInAutomation(void) override; \ |
776 | | NS_IMETHOD SetGCZeal(int32_t zeal, JSContext* cx) override; \ |
777 | | NS_IMETHOD NukeSandbox(JS::HandleValue obj, JSContext* cx) override; \ |
778 | | NS_IMETHOD BlockScriptForGlobal(JS::HandleValue global, JSContext* cx) override; \ |
779 | | NS_IMETHOD UnblockScriptForGlobal(JS::HandleValue global, JSContext* cx) override; \ |
780 | | NS_IMETHOD IsXrayWrapper(JS::HandleValue obj, bool *_retval) override; \ |
781 | | NS_IMETHOD WaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
782 | | NS_IMETHOD UnwaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
783 | | NS_IMETHOD GetClassName(JS::HandleValue aObj, bool aUnwrap, JSContext* cx, char * *_retval) override; \ |
784 | | NS_IMETHOD GetDOMClassInfo(const nsAString& aClassName, nsIClassInfo **_retval) override; \ |
785 | | NS_IMETHOD GetIncumbentGlobal(JS::HandleValue callback, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
786 | | NS_IMETHOD GenerateXPCWrappedJS(JS::HandleValue obj, JS::HandleValue scope, JSContext* cx, nsISupports **_retval) override; \ |
787 | | NS_IMETHOD GetWatchdogTimestamp(const nsAString& aCategory, PRTime *_retval) override; \ |
788 | | NS_IMETHOD GetJSEngineTelemetryValue(JSContext* cx, JS::MutableHandleValue _retval) override; \ |
789 | | NS_IMETHOD CloneInto(JS::HandleValue value, JS::HandleValue scope, JS::HandleValue options, JSContext* cx, JS::MutableHandleValue _retval) override; \ |
790 | | NS_IMETHOD GetWebIDLCallerPrincipal(nsIPrincipal **_retval) override; \ |
791 | | NS_IMETHOD GetObjectPrincipal(JS::HandleValue obj, JSContext* cx, nsIPrincipal **_retval) override; \ |
792 | | NS_IMETHOD GetRealmLocation(JS::HandleValue obj, JSContext* cx, nsACString& _retval) override; \ |
793 | | NS_IMETHOD Now(double *_retval) override; \ |
794 | | NS_IMETHOD ReadUTF8File(nsIFile *file, nsACString& _retval) override; \ |
795 | | NS_IMETHOD ReadUTF8URI(nsIURI *url, nsACString& _retval) override; \ |
796 | | NS_IMETHOD BlockThreadedExecution(nsIBlockThreadedExecutionCallback *aBlockedCallback) override; \ |
797 | | NS_IMETHOD UnblockThreadedExecution(void) override; \ |
798 | | NS_IMETHOD RecordReplayDirective(int32_t directive) override; \ |
799 | | NS_IMETHOD CreateSpellChecker(nsIEditorSpellCheck **_retval) override; \ |
800 | | NS_IMETHOD CreateCommandLine(nsISupports **_retval) override; \ |
801 | | NS_IMETHOD CreateCommandParams(nsICommandParams **_retval) override; \ |
802 | | NS_IMETHOD CreateLoadContext(nsILoadContext **_retval) override; \ |
803 | | NS_IMETHOD CreatePrivateLoadContext(nsILoadContext **_retval) override; \ |
804 | | NS_IMETHOD CreatePersistentProperties(nsIPersistentProperties **_retval) override; |
805 | | |
806 | | /* Use this macro when declaring the members of this interface when the |
807 | | class doesn't implement the interface. This is useful for forwarding. */ |
808 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS_UTILS \ |
809 | | nsresult ReportError(JS::HandleValue error, JS::HandleValue stack, JSContext* cx); \ |
810 | | nsresult GetSandbox(nsIXPCComponents_utils_Sandbox **aSandbox); \ |
811 | | nsresult EvalInSandbox(const nsAString& source, JS::HandleValue sandbox, JS::HandleValue version, const nsACString& filename, int32_t lineNo, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval); \ |
812 | | nsresult GetUAWidgetScope(nsIPrincipal *principal, JSContext* cx, JS::MutableHandleValue _retval); \ |
813 | | nsresult GetSandboxMetadata(JS::HandleValue sandbox, JSContext* cx, JS::MutableHandleValue _retval); \ |
814 | | nsresult SetSandboxMetadata(JS::HandleValue sandbox, JS::HandleValue metadata, JSContext* cx); \ |
815 | | nsresult Import(const nsACString& aResourceURI, JS::HandleValue targetObj, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval); \ |
816 | | nsresult IsModuleLoaded(const nsACString& aResourceURI, bool *_retval); \ |
817 | | nsresult Unload(const nsACString& registryLocation); \ |
818 | | nsresult ImportGlobalProperties(JS::HandleValue aPropertyList, JSContext* cx); \ |
819 | | nsresult GetWeakReference(JS::HandleValue obj, JSContext* cx, xpcIJSWeakReference **_retval); \ |
820 | | nsresult ForceGC(void); \ |
821 | | nsresult ForceCC(nsICycleCollectorListener *aListener); \ |
822 | | nsresult CreateCCLogger(nsICycleCollectorListener **_retval); \ |
823 | | nsresult FinishCC(void); \ |
824 | | nsresult CcSlice(int64_t budget); \ |
825 | | nsresult GetMaxCCSliceTimeSinceClear(int32_t *_retval); \ |
826 | | nsresult ClearMaxCCTime(void); \ |
827 | | nsresult ForceShrinkingGC(void); \ |
828 | | nsresult SchedulePreciseGC(ScheduledGCCallback *callback); \ |
829 | | nsresult SchedulePreciseShrinkingGC(ScheduledGCCallback *callback); \ |
830 | | nsresult UnlinkGhostWindows(void); \ |
831 | | nsresult GetJSTestingFunctions(JSContext* cx, JS::MutableHandleValue _retval); \ |
832 | | nsresult CallFunctionWithAsyncStack(JS::HandleValue function, nsIStackFrame *stack, const nsAString& asyncCause, JSContext* cx, JS::MutableHandleValue _retval); \ |
833 | | nsresult GetGlobalForObject(JS::HandleValue obj, JSContext* cx, JS::MutableHandleValue _retval); \ |
834 | | nsresult IsProxy(JS::HandleValue vobject, JSContext* cx, bool *_retval); \ |
835 | | nsresult ExportFunction(JS::HandleValue vfunction, JS::HandleValue vscope, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval); \ |
836 | | nsresult CreateObjectIn(JS::HandleValue vobj, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval); \ |
837 | | nsresult MakeObjectPropsNormal(JS::HandleValue vobj, JSContext* cx); \ |
838 | | nsresult IsDeadWrapper(JS::HandleValue obj, bool *_retval); \ |
839 | | nsresult IsCrossProcessWrapper(JS::HandleValue obj, bool *_retval); \ |
840 | | nsresult GetCrossProcessWrapperTag(JS::HandleValue obj, nsACString& _retval); \ |
841 | | nsresult PermitCPOWsInScope(JS::HandleValue obj); \ |
842 | | nsresult RecomputeWrappers(JS::HandleValue vobj, JSContext* cx); \ |
843 | | nsresult SetWantXrays(JS::HandleValue vscope, JSContext* cx); \ |
844 | | nsresult ForcePermissiveCOWs(JSContext* cx); \ |
845 | | nsresult Dispatch(JS::HandleValue runnable, JS::HandleValue scope, JSContext* cx); \ |
846 | | nsresult GetStrict(JSContext* cx, bool *aStrict); \ |
847 | | nsresult SetStrict(JSContext* cx, bool aStrict); \ |
848 | | nsresult GetWerror(JSContext* cx, bool *aWerror); \ |
849 | | nsresult SetWerror(JSContext* cx, bool aWerror); \ |
850 | | nsresult GetStrict_mode(JSContext* cx, bool *aStrict_mode); \ |
851 | | nsresult SetStrict_mode(JSContext* cx, bool aStrict_mode); \ |
852 | | nsresult GetIon(JSContext* cx, bool *aIon); \ |
853 | | nsresult SetIon(JSContext* cx, bool aIon); \ |
854 | | nsresult GetIsInAutomation(bool *aIsInAutomation); \ |
855 | | nsresult CrashIfNotInAutomation(void); \ |
856 | | nsresult SetGCZeal(int32_t zeal, JSContext* cx); \ |
857 | | nsresult NukeSandbox(JS::HandleValue obj, JSContext* cx); \ |
858 | | nsresult BlockScriptForGlobal(JS::HandleValue global, JSContext* cx); \ |
859 | | nsresult UnblockScriptForGlobal(JS::HandleValue global, JSContext* cx); \ |
860 | | nsresult IsXrayWrapper(JS::HandleValue obj, bool *_retval); \ |
861 | | nsresult WaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval); \ |
862 | | nsresult UnwaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval); \ |
863 | | nsresult GetClassName(JS::HandleValue aObj, bool aUnwrap, JSContext* cx, char * *_retval); \ |
864 | | nsresult GetDOMClassInfo(const nsAString& aClassName, nsIClassInfo **_retval); \ |
865 | | nsresult GetIncumbentGlobal(JS::HandleValue callback, JSContext* cx, JS::MutableHandleValue _retval); \ |
866 | | nsresult GenerateXPCWrappedJS(JS::HandleValue obj, JS::HandleValue scope, JSContext* cx, nsISupports **_retval); \ |
867 | | nsresult GetWatchdogTimestamp(const nsAString& aCategory, PRTime *_retval); \ |
868 | | nsresult GetJSEngineTelemetryValue(JSContext* cx, JS::MutableHandleValue _retval); \ |
869 | | nsresult CloneInto(JS::HandleValue value, JS::HandleValue scope, JS::HandleValue options, JSContext* cx, JS::MutableHandleValue _retval); \ |
870 | | nsresult GetWebIDLCallerPrincipal(nsIPrincipal **_retval); \ |
871 | | nsresult GetObjectPrincipal(JS::HandleValue obj, JSContext* cx, nsIPrincipal **_retval); \ |
872 | | nsresult GetRealmLocation(JS::HandleValue obj, JSContext* cx, nsACString& _retval); \ |
873 | | nsresult Now(double *_retval); \ |
874 | | nsresult ReadUTF8File(nsIFile *file, nsACString& _retval); \ |
875 | | nsresult ReadUTF8URI(nsIURI *url, nsACString& _retval); \ |
876 | | nsresult BlockThreadedExecution(nsIBlockThreadedExecutionCallback *aBlockedCallback); \ |
877 | | nsresult UnblockThreadedExecution(void); \ |
878 | | nsresult RecordReplayDirective(int32_t directive); \ |
879 | | nsresult CreateSpellChecker(nsIEditorSpellCheck **_retval); \ |
880 | | nsresult CreateCommandLine(nsISupports **_retval); \ |
881 | | nsresult CreateCommandParams(nsICommandParams **_retval); \ |
882 | | nsresult CreateLoadContext(nsILoadContext **_retval); \ |
883 | | nsresult CreatePrivateLoadContext(nsILoadContext **_retval); \ |
884 | | nsresult CreatePersistentProperties(nsIPersistentProperties **_retval); |
885 | | |
886 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
887 | | #define NS_FORWARD_NSIXPCCOMPONENTS_UTILS(_to) \ |
888 | | NS_IMETHOD ReportError(JS::HandleValue error, JS::HandleValue stack, JSContext* cx) override { return _to ReportError(error, stack, cx); } \ |
889 | | NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox **aSandbox) override { return _to GetSandbox(aSandbox); } \ |
890 | | NS_IMETHOD EvalInSandbox(const nsAString& source, JS::HandleValue sandbox, JS::HandleValue version, const nsACString& filename, int32_t lineNo, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return _to EvalInSandbox(source, sandbox, version, filename, lineNo, cx, _argc, _retval); } \ |
891 | | NS_IMETHOD GetUAWidgetScope(nsIPrincipal *principal, JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetUAWidgetScope(principal, cx, _retval); } \ |
892 | | NS_IMETHOD GetSandboxMetadata(JS::HandleValue sandbox, JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetSandboxMetadata(sandbox, cx, _retval); } \ |
893 | | NS_IMETHOD SetSandboxMetadata(JS::HandleValue sandbox, JS::HandleValue metadata, JSContext* cx) override { return _to SetSandboxMetadata(sandbox, metadata, cx); } \ |
894 | | NS_IMETHOD Import(const nsACString& aResourceURI, JS::HandleValue targetObj, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return _to Import(aResourceURI, targetObj, cx, _argc, _retval); } \ |
895 | | NS_IMETHOD IsModuleLoaded(const nsACString& aResourceURI, bool *_retval) override { return _to IsModuleLoaded(aResourceURI, _retval); } \ |
896 | | NS_IMETHOD Unload(const nsACString& registryLocation) override { return _to Unload(registryLocation); } \ |
897 | | NS_IMETHOD ImportGlobalProperties(JS::HandleValue aPropertyList, JSContext* cx) override { return _to ImportGlobalProperties(aPropertyList, cx); } \ |
898 | | NS_IMETHOD GetWeakReference(JS::HandleValue obj, JSContext* cx, xpcIJSWeakReference **_retval) override { return _to GetWeakReference(obj, cx, _retval); } \ |
899 | | NS_IMETHOD ForceGC(void) override { return _to ForceGC(); } \ |
900 | | NS_IMETHOD ForceCC(nsICycleCollectorListener *aListener) override { return _to ForceCC(aListener); } \ |
901 | | NS_IMETHOD CreateCCLogger(nsICycleCollectorListener **_retval) override { return _to CreateCCLogger(_retval); } \ |
902 | | NS_IMETHOD FinishCC(void) override { return _to FinishCC(); } \ |
903 | | NS_IMETHOD CcSlice(int64_t budget) override { return _to CcSlice(budget); } \ |
904 | | NS_IMETHOD GetMaxCCSliceTimeSinceClear(int32_t *_retval) override { return _to GetMaxCCSliceTimeSinceClear(_retval); } \ |
905 | | NS_IMETHOD ClearMaxCCTime(void) override { return _to ClearMaxCCTime(); } \ |
906 | | NS_IMETHOD ForceShrinkingGC(void) override { return _to ForceShrinkingGC(); } \ |
907 | | NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback) override { return _to SchedulePreciseGC(callback); } \ |
908 | | NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback) override { return _to SchedulePreciseShrinkingGC(callback); } \ |
909 | | NS_IMETHOD UnlinkGhostWindows(void) override { return _to UnlinkGhostWindows(); } \ |
910 | | NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetJSTestingFunctions(cx, _retval); } \ |
911 | | NS_IMETHOD CallFunctionWithAsyncStack(JS::HandleValue function, nsIStackFrame *stack, const nsAString& asyncCause, JSContext* cx, JS::MutableHandleValue _retval) override { return _to CallFunctionWithAsyncStack(function, stack, asyncCause, cx, _retval); } \ |
912 | | NS_IMETHOD GetGlobalForObject(JS::HandleValue obj, JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetGlobalForObject(obj, cx, _retval); } \ |
913 | | NS_IMETHOD IsProxy(JS::HandleValue vobject, JSContext* cx, bool *_retval) override { return _to IsProxy(vobject, cx, _retval); } \ |
914 | | NS_IMETHOD ExportFunction(JS::HandleValue vfunction, JS::HandleValue vscope, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) override { return _to ExportFunction(vfunction, vscope, voptions, cx, _retval); } \ |
915 | | NS_IMETHOD CreateObjectIn(JS::HandleValue vobj, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) override { return _to CreateObjectIn(vobj, voptions, cx, _retval); } \ |
916 | | NS_IMETHOD MakeObjectPropsNormal(JS::HandleValue vobj, JSContext* cx) override { return _to MakeObjectPropsNormal(vobj, cx); } \ |
917 | | NS_IMETHOD IsDeadWrapper(JS::HandleValue obj, bool *_retval) override { return _to IsDeadWrapper(obj, _retval); } \ |
918 | | NS_IMETHOD IsCrossProcessWrapper(JS::HandleValue obj, bool *_retval) override { return _to IsCrossProcessWrapper(obj, _retval); } \ |
919 | | NS_IMETHOD GetCrossProcessWrapperTag(JS::HandleValue obj, nsACString& _retval) override { return _to GetCrossProcessWrapperTag(obj, _retval); } \ |
920 | | NS_IMETHOD PermitCPOWsInScope(JS::HandleValue obj) override { return _to PermitCPOWsInScope(obj); } \ |
921 | | NS_IMETHOD RecomputeWrappers(JS::HandleValue vobj, JSContext* cx) override { return _to RecomputeWrappers(vobj, cx); } \ |
922 | | NS_IMETHOD SetWantXrays(JS::HandleValue vscope, JSContext* cx) override { return _to SetWantXrays(vscope, cx); } \ |
923 | | NS_IMETHOD ForcePermissiveCOWs(JSContext* cx) override { return _to ForcePermissiveCOWs(cx); } \ |
924 | | NS_IMETHOD Dispatch(JS::HandleValue runnable, JS::HandleValue scope, JSContext* cx) override { return _to Dispatch(runnable, scope, cx); } \ |
925 | | NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) override { return _to GetStrict(cx, aStrict); } \ |
926 | | NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) override { return _to SetStrict(cx, aStrict); } \ |
927 | | NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) override { return _to GetWerror(cx, aWerror); } \ |
928 | | NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) override { return _to SetWerror(cx, aWerror); } \ |
929 | | NS_IMETHOD GetStrict_mode(JSContext* cx, bool *aStrict_mode) override { return _to GetStrict_mode(cx, aStrict_mode); } \ |
930 | | NS_IMETHOD SetStrict_mode(JSContext* cx, bool aStrict_mode) override { return _to SetStrict_mode(cx, aStrict_mode); } \ |
931 | | NS_IMETHOD GetIon(JSContext* cx, bool *aIon) override { return _to GetIon(cx, aIon); } \ |
932 | | NS_IMETHOD SetIon(JSContext* cx, bool aIon) override { return _to SetIon(cx, aIon); } \ |
933 | | NS_IMETHOD GetIsInAutomation(bool *aIsInAutomation) override { return _to GetIsInAutomation(aIsInAutomation); } \ |
934 | | NS_IMETHOD CrashIfNotInAutomation(void) override { return _to CrashIfNotInAutomation(); } \ |
935 | | NS_IMETHOD SetGCZeal(int32_t zeal, JSContext* cx) override { return _to SetGCZeal(zeal, cx); } \ |
936 | | NS_IMETHOD NukeSandbox(JS::HandleValue obj, JSContext* cx) override { return _to NukeSandbox(obj, cx); } \ |
937 | | NS_IMETHOD BlockScriptForGlobal(JS::HandleValue global, JSContext* cx) override { return _to BlockScriptForGlobal(global, cx); } \ |
938 | | NS_IMETHOD UnblockScriptForGlobal(JS::HandleValue global, JSContext* cx) override { return _to UnblockScriptForGlobal(global, cx); } \ |
939 | | NS_IMETHOD IsXrayWrapper(JS::HandleValue obj, bool *_retval) override { return _to IsXrayWrapper(obj, _retval); } \ |
940 | | NS_IMETHOD WaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) override { return _to WaiveXrays(aVal, cx, _retval); } \ |
941 | | NS_IMETHOD UnwaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) override { return _to UnwaiveXrays(aVal, cx, _retval); } \ |
942 | | NS_IMETHOD GetClassName(JS::HandleValue aObj, bool aUnwrap, JSContext* cx, char * *_retval) override { return _to GetClassName(aObj, aUnwrap, cx, _retval); } \ |
943 | | NS_IMETHOD GetDOMClassInfo(const nsAString& aClassName, nsIClassInfo **_retval) override { return _to GetDOMClassInfo(aClassName, _retval); } \ |
944 | | NS_IMETHOD GetIncumbentGlobal(JS::HandleValue callback, JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetIncumbentGlobal(callback, cx, _retval); } \ |
945 | | NS_IMETHOD GenerateXPCWrappedJS(JS::HandleValue obj, JS::HandleValue scope, JSContext* cx, nsISupports **_retval) override { return _to GenerateXPCWrappedJS(obj, scope, cx, _retval); } \ |
946 | | NS_IMETHOD GetWatchdogTimestamp(const nsAString& aCategory, PRTime *_retval) override { return _to GetWatchdogTimestamp(aCategory, _retval); } \ |
947 | | NS_IMETHOD GetJSEngineTelemetryValue(JSContext* cx, JS::MutableHandleValue _retval) override { return _to GetJSEngineTelemetryValue(cx, _retval); } \ |
948 | | NS_IMETHOD CloneInto(JS::HandleValue value, JS::HandleValue scope, JS::HandleValue options, JSContext* cx, JS::MutableHandleValue _retval) override { return _to CloneInto(value, scope, options, cx, _retval); } \ |
949 | | NS_IMETHOD GetWebIDLCallerPrincipal(nsIPrincipal **_retval) override { return _to GetWebIDLCallerPrincipal(_retval); } \ |
950 | | NS_IMETHOD GetObjectPrincipal(JS::HandleValue obj, JSContext* cx, nsIPrincipal **_retval) override { return _to GetObjectPrincipal(obj, cx, _retval); } \ |
951 | | NS_IMETHOD GetRealmLocation(JS::HandleValue obj, JSContext* cx, nsACString& _retval) override { return _to GetRealmLocation(obj, cx, _retval); } \ |
952 | | NS_IMETHOD Now(double *_retval) override { return _to Now(_retval); } \ |
953 | | NS_IMETHOD ReadUTF8File(nsIFile *file, nsACString& _retval) override { return _to ReadUTF8File(file, _retval); } \ |
954 | | NS_IMETHOD ReadUTF8URI(nsIURI *url, nsACString& _retval) override { return _to ReadUTF8URI(url, _retval); } \ |
955 | | NS_IMETHOD BlockThreadedExecution(nsIBlockThreadedExecutionCallback *aBlockedCallback) override { return _to BlockThreadedExecution(aBlockedCallback); } \ |
956 | | NS_IMETHOD UnblockThreadedExecution(void) override { return _to UnblockThreadedExecution(); } \ |
957 | | NS_IMETHOD RecordReplayDirective(int32_t directive) override { return _to RecordReplayDirective(directive); } \ |
958 | | NS_IMETHOD CreateSpellChecker(nsIEditorSpellCheck **_retval) override { return _to CreateSpellChecker(_retval); } \ |
959 | | NS_IMETHOD CreateCommandLine(nsISupports **_retval) override { return _to CreateCommandLine(_retval); } \ |
960 | | NS_IMETHOD CreateCommandParams(nsICommandParams **_retval) override { return _to CreateCommandParams(_retval); } \ |
961 | | NS_IMETHOD CreateLoadContext(nsILoadContext **_retval) override { return _to CreateLoadContext(_retval); } \ |
962 | | NS_IMETHOD CreatePrivateLoadContext(nsILoadContext **_retval) override { return _to CreatePrivateLoadContext(_retval); } \ |
963 | | NS_IMETHOD CreatePersistentProperties(nsIPersistentProperties **_retval) override { return _to CreatePersistentProperties(_retval); } |
964 | | |
965 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
966 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_UTILS(_to) \ |
967 | | NS_IMETHOD ReportError(JS::HandleValue error, JS::HandleValue stack, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ReportError(error, stack, cx); } \ |
968 | | NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox **aSandbox) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSandbox(aSandbox); } \ |
969 | | NS_IMETHOD EvalInSandbox(const nsAString& source, JS::HandleValue sandbox, JS::HandleValue version, const nsACString& filename, int32_t lineNo, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->EvalInSandbox(source, sandbox, version, filename, lineNo, cx, _argc, _retval); } \ |
970 | | NS_IMETHOD GetUAWidgetScope(nsIPrincipal *principal, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUAWidgetScope(principal, cx, _retval); } \ |
971 | | NS_IMETHOD GetSandboxMetadata(JS::HandleValue sandbox, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSandboxMetadata(sandbox, cx, _retval); } \ |
972 | | NS_IMETHOD SetSandboxMetadata(JS::HandleValue sandbox, JS::HandleValue metadata, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSandboxMetadata(sandbox, metadata, cx); } \ |
973 | | NS_IMETHOD Import(const nsACString& aResourceURI, JS::HandleValue targetObj, JSContext* cx, uint8_t _argc, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Import(aResourceURI, targetObj, cx, _argc, _retval); } \ |
974 | | NS_IMETHOD IsModuleLoaded(const nsACString& aResourceURI, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsModuleLoaded(aResourceURI, _retval); } \ |
975 | | NS_IMETHOD Unload(const nsACString& registryLocation) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Unload(registryLocation); } \ |
976 | | NS_IMETHOD ImportGlobalProperties(JS::HandleValue aPropertyList, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ImportGlobalProperties(aPropertyList, cx); } \ |
977 | | NS_IMETHOD GetWeakReference(JS::HandleValue obj, JSContext* cx, xpcIJSWeakReference **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWeakReference(obj, cx, _retval); } \ |
978 | | NS_IMETHOD ForceGC(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ForceGC(); } \ |
979 | | NS_IMETHOD ForceCC(nsICycleCollectorListener *aListener) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ForceCC(aListener); } \ |
980 | | NS_IMETHOD CreateCCLogger(nsICycleCollectorListener **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateCCLogger(_retval); } \ |
981 | | NS_IMETHOD FinishCC(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->FinishCC(); } \ |
982 | | NS_IMETHOD CcSlice(int64_t budget) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CcSlice(budget); } \ |
983 | | NS_IMETHOD GetMaxCCSliceTimeSinceClear(int32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMaxCCSliceTimeSinceClear(_retval); } \ |
984 | | NS_IMETHOD ClearMaxCCTime(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearMaxCCTime(); } \ |
985 | | NS_IMETHOD ForceShrinkingGC(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ForceShrinkingGC(); } \ |
986 | | NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SchedulePreciseGC(callback); } \ |
987 | | NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SchedulePreciseShrinkingGC(callback); } \ |
988 | | NS_IMETHOD UnlinkGhostWindows(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UnlinkGhostWindows(); } \ |
989 | | NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetJSTestingFunctions(cx, _retval); } \ |
990 | | NS_IMETHOD CallFunctionWithAsyncStack(JS::HandleValue function, nsIStackFrame *stack, const nsAString& asyncCause, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CallFunctionWithAsyncStack(function, stack, asyncCause, cx, _retval); } \ |
991 | | NS_IMETHOD GetGlobalForObject(JS::HandleValue obj, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGlobalForObject(obj, cx, _retval); } \ |
992 | | NS_IMETHOD IsProxy(JS::HandleValue vobject, JSContext* cx, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsProxy(vobject, cx, _retval); } \ |
993 | | NS_IMETHOD ExportFunction(JS::HandleValue vfunction, JS::HandleValue vscope, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ExportFunction(vfunction, vscope, voptions, cx, _retval); } \ |
994 | | NS_IMETHOD CreateObjectIn(JS::HandleValue vobj, JS::HandleValue voptions, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateObjectIn(vobj, voptions, cx, _retval); } \ |
995 | | NS_IMETHOD MakeObjectPropsNormal(JS::HandleValue vobj, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->MakeObjectPropsNormal(vobj, cx); } \ |
996 | | NS_IMETHOD IsDeadWrapper(JS::HandleValue obj, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsDeadWrapper(obj, _retval); } \ |
997 | | NS_IMETHOD IsCrossProcessWrapper(JS::HandleValue obj, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsCrossProcessWrapper(obj, _retval); } \ |
998 | | NS_IMETHOD GetCrossProcessWrapperTag(JS::HandleValue obj, nsACString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCrossProcessWrapperTag(obj, _retval); } \ |
999 | | NS_IMETHOD PermitCPOWsInScope(JS::HandleValue obj) override { return !_to ? NS_ERROR_NULL_POINTER : _to->PermitCPOWsInScope(obj); } \ |
1000 | | NS_IMETHOD RecomputeWrappers(JS::HandleValue vobj, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RecomputeWrappers(vobj, cx); } \ |
1001 | | NS_IMETHOD SetWantXrays(JS::HandleValue vscope, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetWantXrays(vscope, cx); } \ |
1002 | | NS_IMETHOD ForcePermissiveCOWs(JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ForcePermissiveCOWs(cx); } \ |
1003 | | NS_IMETHOD Dispatch(JS::HandleValue runnable, JS::HandleValue scope, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Dispatch(runnable, scope, cx); } \ |
1004 | | NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStrict(cx, aStrict); } \ |
1005 | | NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStrict(cx, aStrict); } \ |
1006 | | NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWerror(cx, aWerror); } \ |
1007 | | NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetWerror(cx, aWerror); } \ |
1008 | | NS_IMETHOD GetStrict_mode(JSContext* cx, bool *aStrict_mode) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStrict_mode(cx, aStrict_mode); } \ |
1009 | | NS_IMETHOD SetStrict_mode(JSContext* cx, bool aStrict_mode) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStrict_mode(cx, aStrict_mode); } \ |
1010 | | NS_IMETHOD GetIon(JSContext* cx, bool *aIon) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIon(cx, aIon); } \ |
1011 | | NS_IMETHOD SetIon(JSContext* cx, bool aIon) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetIon(cx, aIon); } \ |
1012 | | NS_IMETHOD GetIsInAutomation(bool *aIsInAutomation) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIsInAutomation(aIsInAutomation); } \ |
1013 | | NS_IMETHOD CrashIfNotInAutomation(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CrashIfNotInAutomation(); } \ |
1014 | | NS_IMETHOD SetGCZeal(int32_t zeal, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetGCZeal(zeal, cx); } \ |
1015 | | NS_IMETHOD NukeSandbox(JS::HandleValue obj, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->NukeSandbox(obj, cx); } \ |
1016 | | NS_IMETHOD BlockScriptForGlobal(JS::HandleValue global, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->BlockScriptForGlobal(global, cx); } \ |
1017 | | NS_IMETHOD UnblockScriptForGlobal(JS::HandleValue global, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UnblockScriptForGlobal(global, cx); } \ |
1018 | | NS_IMETHOD IsXrayWrapper(JS::HandleValue obj, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsXrayWrapper(obj, _retval); } \ |
1019 | | NS_IMETHOD WaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->WaiveXrays(aVal, cx, _retval); } \ |
1020 | | NS_IMETHOD UnwaiveXrays(JS::HandleValue aVal, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UnwaiveXrays(aVal, cx, _retval); } \ |
1021 | | NS_IMETHOD GetClassName(JS::HandleValue aObj, bool aUnwrap, JSContext* cx, char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassName(aObj, aUnwrap, cx, _retval); } \ |
1022 | | NS_IMETHOD GetDOMClassInfo(const nsAString& aClassName, nsIClassInfo **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDOMClassInfo(aClassName, _retval); } \ |
1023 | | NS_IMETHOD GetIncumbentGlobal(JS::HandleValue callback, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIncumbentGlobal(callback, cx, _retval); } \ |
1024 | | NS_IMETHOD GenerateXPCWrappedJS(JS::HandleValue obj, JS::HandleValue scope, JSContext* cx, nsISupports **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GenerateXPCWrappedJS(obj, scope, cx, _retval); } \ |
1025 | | NS_IMETHOD GetWatchdogTimestamp(const nsAString& aCategory, PRTime *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWatchdogTimestamp(aCategory, _retval); } \ |
1026 | | NS_IMETHOD GetJSEngineTelemetryValue(JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetJSEngineTelemetryValue(cx, _retval); } \ |
1027 | | NS_IMETHOD CloneInto(JS::HandleValue value, JS::HandleValue scope, JS::HandleValue options, JSContext* cx, JS::MutableHandleValue _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CloneInto(value, scope, options, cx, _retval); } \ |
1028 | | NS_IMETHOD GetWebIDLCallerPrincipal(nsIPrincipal **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWebIDLCallerPrincipal(_retval); } \ |
1029 | | NS_IMETHOD GetObjectPrincipal(JS::HandleValue obj, JSContext* cx, nsIPrincipal **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetObjectPrincipal(obj, cx, _retval); } \ |
1030 | | NS_IMETHOD GetRealmLocation(JS::HandleValue obj, JSContext* cx, nsACString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRealmLocation(obj, cx, _retval); } \ |
1031 | | NS_IMETHOD Now(double *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Now(_retval); } \ |
1032 | | NS_IMETHOD ReadUTF8File(nsIFile *file, nsACString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ReadUTF8File(file, _retval); } \ |
1033 | | NS_IMETHOD ReadUTF8URI(nsIURI *url, nsACString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ReadUTF8URI(url, _retval); } \ |
1034 | | NS_IMETHOD BlockThreadedExecution(nsIBlockThreadedExecutionCallback *aBlockedCallback) override { return !_to ? NS_ERROR_NULL_POINTER : _to->BlockThreadedExecution(aBlockedCallback); } \ |
1035 | | NS_IMETHOD UnblockThreadedExecution(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UnblockThreadedExecution(); } \ |
1036 | | NS_IMETHOD RecordReplayDirective(int32_t directive) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RecordReplayDirective(directive); } \ |
1037 | | NS_IMETHOD CreateSpellChecker(nsIEditorSpellCheck **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateSpellChecker(_retval); } \ |
1038 | | NS_IMETHOD CreateCommandLine(nsISupports **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateCommandLine(_retval); } \ |
1039 | | NS_IMETHOD CreateCommandParams(nsICommandParams **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateCommandParams(_retval); } \ |
1040 | | NS_IMETHOD CreateLoadContext(nsILoadContext **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateLoadContext(_retval); } \ |
1041 | | NS_IMETHOD CreatePrivateLoadContext(nsILoadContext **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreatePrivateLoadContext(_retval); } \ |
1042 | | NS_IMETHOD CreatePersistentProperties(nsIPersistentProperties **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CreatePersistentProperties(_retval); } |
1043 | | |
1044 | | |
1045 | | /* starting interface: nsIXPCComponentsBase */ |
1046 | | #define NS_IXPCCOMPONENTSBASE_IID_STR "eeeada2f-86c0-4609-b2bf-4bf2351b1ce6" |
1047 | | |
1048 | | #define NS_IXPCCOMPONENTSBASE_IID \ |
1049 | | {0xeeeada2f, 0x86c0, 0x4609, \ |
1050 | | { 0xb2, 0xbf, 0x4b, 0xf2, 0x35, 0x1b, 0x1c, 0xe6 }} |
1051 | | |
1052 | | class NS_NO_VTABLE nsIXPCComponentsBase : public nsISupports { |
1053 | | public: |
1054 | | |
1055 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTSBASE_IID) |
1056 | | |
1057 | | /* readonly attribute nsIXPCComponents_Interfaces interfaces; */ |
1058 | | NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces **aInterfaces) = 0; |
1059 | | |
1060 | | /* readonly attribute nsIXPCComponents_InterfacesByID interfacesByID; */ |
1061 | | NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID **aInterfacesByID) = 0; |
1062 | | |
1063 | | /* readonly attribute nsIXPCComponents_Results results; */ |
1064 | | NS_IMETHOD GetResults(nsIXPCComponents_Results **aResults) = 0; |
1065 | | |
1066 | | /* boolean isSuccessCode (in nsresult result); */ |
1067 | | NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval) = 0; |
1068 | | |
1069 | | }; |
1070 | | |
1071 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponentsBase, NS_IXPCCOMPONENTSBASE_IID) |
1072 | | |
1073 | | /* Use this macro when declaring classes that implement this interface. */ |
1074 | | #define NS_DECL_NSIXPCCOMPONENTSBASE \ |
1075 | | NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces **aInterfaces) override; \ |
1076 | | NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID **aInterfacesByID) override; \ |
1077 | | NS_IMETHOD GetResults(nsIXPCComponents_Results **aResults) override; \ |
1078 | | NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval) override; |
1079 | | |
1080 | | /* Use this macro when declaring the members of this interface when the |
1081 | | class doesn't implement the interface. This is useful for forwarding. */ |
1082 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTSBASE \ |
1083 | | nsresult GetInterfaces(nsIXPCComponents_Interfaces **aInterfaces); \ |
1084 | | nsresult GetInterfacesByID(nsIXPCComponents_InterfacesByID **aInterfacesByID); \ |
1085 | | nsresult GetResults(nsIXPCComponents_Results **aResults); \ |
1086 | | nsresult IsSuccessCode(nsresult result, bool *_retval); |
1087 | | |
1088 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
1089 | | #define NS_FORWARD_NSIXPCCOMPONENTSBASE(_to) \ |
1090 | 4 | NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces **aInterfaces) override { return _to GetInterfaces(aInterfaces); } \ |
1091 | 0 | NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID **aInterfacesByID) override { return _to GetInterfacesByID(aInterfacesByID); } \ |
1092 | 3 | NS_IMETHOD GetResults(nsIXPCComponents_Results **aResults) override { return _to GetResults(aResults); } \ |
1093 | 0 | NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval) override { return _to IsSuccessCode(result, _retval); } |
1094 | | |
1095 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
1096 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTSBASE(_to) \ |
1097 | | NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces **aInterfaces) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaces(aInterfaces); } \ |
1098 | | NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID **aInterfacesByID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfacesByID(aInterfacesByID); } \ |
1099 | | NS_IMETHOD GetResults(nsIXPCComponents_Results **aResults) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetResults(aResults); } \ |
1100 | | NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsSuccessCode(result, _retval); } |
1101 | | |
1102 | | |
1103 | | /* starting interface: nsIXPCComponents */ |
1104 | | #define NS_IXPCCOMPONENTS_IID_STR "aa28aaf6-70ce-4b03-9514-afe43c7dfda8" |
1105 | | |
1106 | | #define NS_IXPCCOMPONENTS_IID \ |
1107 | | {0xaa28aaf6, 0x70ce, 0x4b03, \ |
1108 | | { 0x95, 0x14, 0xaf, 0xe4, 0x3c, 0x7d, 0xfd, 0xa8 }} |
1109 | | |
1110 | | class NS_NO_VTABLE nsIXPCComponents : public nsIXPCComponentsBase { |
1111 | | public: |
1112 | | |
1113 | | NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_IID) |
1114 | | |
1115 | | /* readonly attribute nsIXPCComponents_Classes classes; */ |
1116 | | NS_IMETHOD GetClasses(nsIXPCComponents_Classes **aClasses) = 0; |
1117 | | |
1118 | | /* readonly attribute nsIXPCComponents_ClassesByID classesByID; */ |
1119 | | NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID **aClassesByID) = 0; |
1120 | | |
1121 | | /* readonly attribute nsIStackFrame stack; */ |
1122 | | NS_IMETHOD GetStack(nsIStackFrame **aStack) = 0; |
1123 | | |
1124 | | /* readonly attribute nsIComponentManager manager; */ |
1125 | | NS_IMETHOD GetManager(nsIComponentManager **aManager) = 0; |
1126 | | |
1127 | | /* readonly attribute nsIXPCComponents_Utils utils; */ |
1128 | | NS_IMETHOD GetUtils(nsIXPCComponents_Utils **aUtils) = 0; |
1129 | | |
1130 | | /* readonly attribute nsIXPCComponents_ID ID; */ |
1131 | | NS_IMETHOD GetID(nsIXPCComponents_ID **aID) = 0; |
1132 | | |
1133 | | /* readonly attribute nsIXPCComponents_Exception Exception; */ |
1134 | | NS_IMETHOD GetException(nsIXPCComponents_Exception **aException) = 0; |
1135 | | |
1136 | | /* readonly attribute nsIXPCComponents_Constructor Constructor; */ |
1137 | | NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor **aConstructor) = 0; |
1138 | | |
1139 | | /* [implicit_jscontext] attribute jsval returnCode; */ |
1140 | | NS_IMETHOD GetReturnCode(JSContext* cx, JS::MutableHandleValue aReturnCode) = 0; |
1141 | | NS_IMETHOD SetReturnCode(JSContext* cx, JS::HandleValue aReturnCode) = 0; |
1142 | | |
1143 | | }; |
1144 | | |
1145 | | NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents, NS_IXPCCOMPONENTS_IID) |
1146 | | |
1147 | | /* Use this macro when declaring classes that implement this interface. */ |
1148 | | #define NS_DECL_NSIXPCCOMPONENTS \ |
1149 | | NS_IMETHOD GetClasses(nsIXPCComponents_Classes **aClasses) override; \ |
1150 | | NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID **aClassesByID) override; \ |
1151 | | NS_IMETHOD GetStack(nsIStackFrame **aStack) override; \ |
1152 | | NS_IMETHOD GetManager(nsIComponentManager **aManager) override; \ |
1153 | | NS_IMETHOD GetUtils(nsIXPCComponents_Utils **aUtils) override; \ |
1154 | | NS_IMETHOD GetID(nsIXPCComponents_ID **aID) override; \ |
1155 | | NS_IMETHOD GetException(nsIXPCComponents_Exception **aException) override; \ |
1156 | | NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor **aConstructor) override; \ |
1157 | | NS_IMETHOD GetReturnCode(JSContext* cx, JS::MutableHandleValue aReturnCode) override; \ |
1158 | | NS_IMETHOD SetReturnCode(JSContext* cx, JS::HandleValue aReturnCode) override; |
1159 | | |
1160 | | /* Use this macro when declaring the members of this interface when the |
1161 | | class doesn't implement the interface. This is useful for forwarding. */ |
1162 | | #define NS_DECL_NON_VIRTUAL_NSIXPCCOMPONENTS \ |
1163 | | nsresult GetClasses(nsIXPCComponents_Classes **aClasses); \ |
1164 | | nsresult GetClassesByID(nsIXPCComponents_ClassesByID **aClassesByID); \ |
1165 | | nsresult GetStack(nsIStackFrame **aStack); \ |
1166 | | nsresult GetManager(nsIComponentManager **aManager); \ |
1167 | | nsresult GetUtils(nsIXPCComponents_Utils **aUtils); \ |
1168 | | nsresult GetID(nsIXPCComponents_ID **aID); \ |
1169 | | nsresult GetException(nsIXPCComponents_Exception **aException); \ |
1170 | | nsresult GetConstructor(nsIXPCComponents_Constructor **aConstructor); \ |
1171 | | nsresult GetReturnCode(JSContext* cx, JS::MutableHandleValue aReturnCode); \ |
1172 | | nsresult SetReturnCode(JSContext* cx, JS::HandleValue aReturnCode); |
1173 | | |
1174 | | /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
1175 | | #define NS_FORWARD_NSIXPCCOMPONENTS(_to) \ |
1176 | | NS_IMETHOD GetClasses(nsIXPCComponents_Classes **aClasses) override { return _to GetClasses(aClasses); } \ |
1177 | | NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID **aClassesByID) override { return _to GetClassesByID(aClassesByID); } \ |
1178 | | NS_IMETHOD GetStack(nsIStackFrame **aStack) override { return _to GetStack(aStack); } \ |
1179 | | NS_IMETHOD GetManager(nsIComponentManager **aManager) override { return _to GetManager(aManager); } \ |
1180 | | NS_IMETHOD GetUtils(nsIXPCComponents_Utils **aUtils) override { return _to GetUtils(aUtils); } \ |
1181 | | NS_IMETHOD GetID(nsIXPCComponents_ID **aID) override { return _to GetID(aID); } \ |
1182 | | NS_IMETHOD GetException(nsIXPCComponents_Exception **aException) override { return _to GetException(aException); } \ |
1183 | | NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor **aConstructor) override { return _to GetConstructor(aConstructor); } \ |
1184 | | NS_IMETHOD GetReturnCode(JSContext* cx, JS::MutableHandleValue aReturnCode) override { return _to GetReturnCode(cx, aReturnCode); } \ |
1185 | | NS_IMETHOD SetReturnCode(JSContext* cx, JS::HandleValue aReturnCode) override { return _to SetReturnCode(cx, aReturnCode); } |
1186 | | |
1187 | | /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
1188 | | #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS(_to) \ |
1189 | | NS_IMETHOD GetClasses(nsIXPCComponents_Classes **aClasses) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClasses(aClasses); } \ |
1190 | | NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID **aClassesByID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassesByID(aClassesByID); } \ |
1191 | | NS_IMETHOD GetStack(nsIStackFrame **aStack) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStack(aStack); } \ |
1192 | | NS_IMETHOD GetManager(nsIComponentManager **aManager) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetManager(aManager); } \ |
1193 | | NS_IMETHOD GetUtils(nsIXPCComponents_Utils **aUtils) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUtils(aUtils); } \ |
1194 | | NS_IMETHOD GetID(nsIXPCComponents_ID **aID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetID(aID); } \ |
1195 | | NS_IMETHOD GetException(nsIXPCComponents_Exception **aException) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetException(aException); } \ |
1196 | | NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor **aConstructor) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetConstructor(aConstructor); } \ |
1197 | | NS_IMETHOD GetReturnCode(JSContext* cx, JS::MutableHandleValue aReturnCode) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReturnCode(cx, aReturnCode); } \ |
1198 | | NS_IMETHOD SetReturnCode(JSContext* cx, JS::HandleValue aReturnCode) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReturnCode(cx, aReturnCode); } |
1199 | | |
1200 | | |
1201 | | #endif /* __gen_xpccomponents_h__ */ |