1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/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 : #ifndef __gen_xpcexception_h__
14 : #include "xpcexception.h"
15 : #endif
16 :
17 : #ifndef __gen_xpcjsid_h__
18 : #include "xpcjsid.h"
19 : #endif
20 :
21 : #ifndef __gen_nsIComponentManager_h__
22 : #include "nsIComponentManager.h"
23 : #endif
24 :
25 : #include "jspubtd.h"
26 :
27 : /* For IDL files that don't want to include root IDL files. */
28 : #ifndef NS_NO_VTABLE
29 : #define NS_NO_VTABLE
30 : #endif
31 : #include "jspubtd.h"
32 : class xpcIJSWeakReference; /* forward declaration */
33 :
34 :
35 : /* starting interface: nsIXPCComponents_InterfacesByID */
36 : #define NS_IXPCCOMPONENTS_INTERFACESBYID_IID_STR "c99cffac-5aed-4267-ad2f-f4a4c9d4a081"
37 :
38 : #define NS_IXPCCOMPONENTS_INTERFACESBYID_IID \
39 : {0xc99cffac, 0x5aed, 0x4267, \
40 : { 0xad, 0x2f, 0xf4, 0xa4, 0xc9, 0xd4, 0xa0, 0x81 }}
41 :
42 1 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_InterfacesByID : public nsISupports {
43 : public:
44 :
45 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_INTERFACESBYID_IID)
46 :
47 : };
48 :
49 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_InterfacesByID, NS_IXPCCOMPONENTS_INTERFACESBYID_IID)
50 :
51 : /* Use this macro when declaring classes that implement this interface. */
52 : #define NS_DECL_NSIXPCCOMPONENTS_INTERFACESBYID \
53 : /* no methods! */
54 :
55 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
56 : #define NS_FORWARD_NSIXPCCOMPONENTS_INTERFACESBYID(_to) \
57 : /* no methods! */
58 :
59 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
60 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_INTERFACESBYID(_to) \
61 : /* no methods! */
62 :
63 : #if 0
64 : /* Use the code below as a template for the implementation class for this interface. */
65 :
66 : /* Header file */
67 : class nsXPCComponents_InterfacesByID : public nsIXPCComponents_InterfacesByID
68 : {
69 : public:
70 : NS_DECL_ISUPPORTS
71 : NS_DECL_NSIXPCCOMPONENTS_INTERFACESBYID
72 :
73 : nsXPCComponents_InterfacesByID();
74 :
75 : private:
76 : ~nsXPCComponents_InterfacesByID();
77 :
78 : protected:
79 : /* additional members */
80 : };
81 :
82 : /* Implementation file */
83 : NS_IMPL_ISUPPORTS1(nsXPCComponents_InterfacesByID, nsIXPCComponents_InterfacesByID)
84 :
85 : nsXPCComponents_InterfacesByID::nsXPCComponents_InterfacesByID()
86 : {
87 : /* member initializers and constructor code */
88 : }
89 :
90 : nsXPCComponents_InterfacesByID::~nsXPCComponents_InterfacesByID()
91 : {
92 : /* destructor code */
93 : }
94 :
95 : /* End of implementation class template. */
96 : #endif
97 :
98 :
99 : /* starting interface: nsIXPCComponents_Interfaces */
100 : #define NS_IXPCCOMPONENTS_INTERFACES_IID_STR "b8c31bba-79db-4a1d-930d-4cdd68713f9e"
101 :
102 : #define NS_IXPCCOMPONENTS_INTERFACES_IID \
103 : {0xb8c31bba, 0x79db, 0x4a1d, \
104 : { 0x93, 0x0d, 0x4c, 0xdd, 0x68, 0x71, 0x3f, 0x9e }}
105 :
106 12686 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_Interfaces : public nsISupports {
107 : public:
108 :
109 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_INTERFACES_IID)
110 :
111 : };
112 :
113 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Interfaces, NS_IXPCCOMPONENTS_INTERFACES_IID)
114 :
115 : /* Use this macro when declaring classes that implement this interface. */
116 : #define NS_DECL_NSIXPCCOMPONENTS_INTERFACES \
117 : /* no methods! */
118 :
119 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
120 : #define NS_FORWARD_NSIXPCCOMPONENTS_INTERFACES(_to) \
121 : /* no methods! */
122 :
123 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
124 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_INTERFACES(_to) \
125 : /* no methods! */
126 :
127 : #if 0
128 : /* Use the code below as a template for the implementation class for this interface. */
129 :
130 : /* Header file */
131 : class nsXPCComponents_Interfaces : public nsIXPCComponents_Interfaces
132 : {
133 : public:
134 : NS_DECL_ISUPPORTS
135 : NS_DECL_NSIXPCCOMPONENTS_INTERFACES
136 :
137 : nsXPCComponents_Interfaces();
138 :
139 : private:
140 : ~nsXPCComponents_Interfaces();
141 :
142 : protected:
143 : /* additional members */
144 : };
145 :
146 : /* Implementation file */
147 : NS_IMPL_ISUPPORTS1(nsXPCComponents_Interfaces, nsIXPCComponents_Interfaces)
148 :
149 : nsXPCComponents_Interfaces::nsXPCComponents_Interfaces()
150 : {
151 : /* member initializers and constructor code */
152 : }
153 :
154 : nsXPCComponents_Interfaces::~nsXPCComponents_Interfaces()
155 : {
156 : /* destructor code */
157 : }
158 :
159 : /* End of implementation class template. */
160 : #endif
161 :
162 :
163 : /* starting interface: nsIXPCComponents_Classes */
164 : #define NS_IXPCCOMPONENTS_CLASSES_IID_STR "978ff520-d26c-11d2-9842-006008962422"
165 :
166 : #define NS_IXPCCOMPONENTS_CLASSES_IID \
167 : {0x978ff520, 0xd26c, 0x11d2, \
168 : { 0x98, 0x42, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
169 :
170 12598 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_Classes : public nsISupports {
171 : public:
172 :
173 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_CLASSES_IID)
174 :
175 : };
176 :
177 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Classes, NS_IXPCCOMPONENTS_CLASSES_IID)
178 :
179 : /* Use this macro when declaring classes that implement this interface. */
180 : #define NS_DECL_NSIXPCCOMPONENTS_CLASSES \
181 : /* no methods! */
182 :
183 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
184 : #define NS_FORWARD_NSIXPCCOMPONENTS_CLASSES(_to) \
185 : /* no methods! */
186 :
187 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
188 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_CLASSES(_to) \
189 : /* no methods! */
190 :
191 : #if 0
192 : /* Use the code below as a template for the implementation class for this interface. */
193 :
194 : /* Header file */
195 : class nsXPCComponents_Classes : public nsIXPCComponents_Classes
196 : {
197 : public:
198 : NS_DECL_ISUPPORTS
199 : NS_DECL_NSIXPCCOMPONENTS_CLASSES
200 :
201 : nsXPCComponents_Classes();
202 :
203 : private:
204 : ~nsXPCComponents_Classes();
205 :
206 : protected:
207 : /* additional members */
208 : };
209 :
210 : /* Implementation file */
211 : NS_IMPL_ISUPPORTS1(nsXPCComponents_Classes, nsIXPCComponents_Classes)
212 :
213 : nsXPCComponents_Classes::nsXPCComponents_Classes()
214 : {
215 : /* member initializers and constructor code */
216 : }
217 :
218 : nsXPCComponents_Classes::~nsXPCComponents_Classes()
219 : {
220 : /* destructor code */
221 : }
222 :
223 : /* End of implementation class template. */
224 : #endif
225 :
226 :
227 : /* starting interface: nsIXPCComponents_ClassesByID */
228 : #define NS_IXPCCOMPONENTS_CLASSESBYID_IID_STR "336a9590-4d19-11d3-9893-006008962422"
229 :
230 : #define NS_IXPCCOMPONENTS_CLASSESBYID_IID \
231 : {0x336a9590, 0x4d19, 0x11d3, \
232 : { 0x98, 0x93, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
233 :
234 4 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_ClassesByID : public nsISupports {
235 : public:
236 :
237 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_CLASSESBYID_IID)
238 :
239 : };
240 :
241 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_ClassesByID, NS_IXPCCOMPONENTS_CLASSESBYID_IID)
242 :
243 : /* Use this macro when declaring classes that implement this interface. */
244 : #define NS_DECL_NSIXPCCOMPONENTS_CLASSESBYID \
245 : /* no methods! */
246 :
247 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
248 : #define NS_FORWARD_NSIXPCCOMPONENTS_CLASSESBYID(_to) \
249 : /* no methods! */
250 :
251 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
252 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_CLASSESBYID(_to) \
253 : /* no methods! */
254 :
255 : #if 0
256 : /* Use the code below as a template for the implementation class for this interface. */
257 :
258 : /* Header file */
259 : class nsXPCComponents_ClassesByID : public nsIXPCComponents_ClassesByID
260 : {
261 : public:
262 : NS_DECL_ISUPPORTS
263 : NS_DECL_NSIXPCCOMPONENTS_CLASSESBYID
264 :
265 : nsXPCComponents_ClassesByID();
266 :
267 : private:
268 : ~nsXPCComponents_ClassesByID();
269 :
270 : protected:
271 : /* additional members */
272 : };
273 :
274 : /* Implementation file */
275 : NS_IMPL_ISUPPORTS1(nsXPCComponents_ClassesByID, nsIXPCComponents_ClassesByID)
276 :
277 : nsXPCComponents_ClassesByID::nsXPCComponents_ClassesByID()
278 : {
279 : /* member initializers and constructor code */
280 : }
281 :
282 : nsXPCComponents_ClassesByID::~nsXPCComponents_ClassesByID()
283 : {
284 : /* destructor code */
285 : }
286 :
287 : /* End of implementation class template. */
288 : #endif
289 :
290 :
291 : /* starting interface: nsIXPCComponents_Results */
292 : #define NS_IXPCCOMPONENTS_RESULTS_IID_STR "2fc229a0-5860-11d3-9899-006008962422"
293 :
294 : #define NS_IXPCCOMPONENTS_RESULTS_IID \
295 : {0x2fc229a0, 0x5860, 0x11d3, \
296 : { 0x98, 0x99, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
297 :
298 9794 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_Results : public nsISupports {
299 : public:
300 :
301 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_RESULTS_IID)
302 :
303 : };
304 :
305 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Results, NS_IXPCCOMPONENTS_RESULTS_IID)
306 :
307 : /* Use this macro when declaring classes that implement this interface. */
308 : #define NS_DECL_NSIXPCCOMPONENTS_RESULTS \
309 : /* no methods! */
310 :
311 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
312 : #define NS_FORWARD_NSIXPCCOMPONENTS_RESULTS(_to) \
313 : /* no methods! */
314 :
315 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
316 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_RESULTS(_to) \
317 : /* no methods! */
318 :
319 : #if 0
320 : /* Use the code below as a template for the implementation class for this interface. */
321 :
322 : /* Header file */
323 : class nsXPCComponents_Results : public nsIXPCComponents_Results
324 : {
325 : public:
326 : NS_DECL_ISUPPORTS
327 : NS_DECL_NSIXPCCOMPONENTS_RESULTS
328 :
329 : nsXPCComponents_Results();
330 :
331 : private:
332 : ~nsXPCComponents_Results();
333 :
334 : protected:
335 : /* additional members */
336 : };
337 :
338 : /* Implementation file */
339 : NS_IMPL_ISUPPORTS1(nsXPCComponents_Results, nsIXPCComponents_Results)
340 :
341 : nsXPCComponents_Results::nsXPCComponents_Results()
342 : {
343 : /* member initializers and constructor code */
344 : }
345 :
346 : nsXPCComponents_Results::~nsXPCComponents_Results()
347 : {
348 : /* destructor code */
349 : }
350 :
351 : /* End of implementation class template. */
352 : #endif
353 :
354 :
355 : /* starting interface: nsIXPCComponents_ID */
356 : #define NS_IXPCCOMPONENTS_ID_IID_STR "7994a6e0-e028-11d3-8f5d-0010a4e73d9a"
357 :
358 : #define NS_IXPCCOMPONENTS_ID_IID \
359 : {0x7994a6e0, 0xe028, 0x11d3, \
360 : { 0x8f, 0x5d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
361 :
362 3458 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_ID : public nsISupports {
363 : public:
364 :
365 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_ID_IID)
366 :
367 : };
368 :
369 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_ID, NS_IXPCCOMPONENTS_ID_IID)
370 :
371 : /* Use this macro when declaring classes that implement this interface. */
372 : #define NS_DECL_NSIXPCCOMPONENTS_ID \
373 : /* no methods! */
374 :
375 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
376 : #define NS_FORWARD_NSIXPCCOMPONENTS_ID(_to) \
377 : /* no methods! */
378 :
379 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
380 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_ID(_to) \
381 : /* no methods! */
382 :
383 : #if 0
384 : /* Use the code below as a template for the implementation class for this interface. */
385 :
386 : /* Header file */
387 : class nsXPCComponents_ID : public nsIXPCComponents_ID
388 : {
389 : public:
390 : NS_DECL_ISUPPORTS
391 : NS_DECL_NSIXPCCOMPONENTS_ID
392 :
393 : nsXPCComponents_ID();
394 :
395 : private:
396 : ~nsXPCComponents_ID();
397 :
398 : protected:
399 : /* additional members */
400 : };
401 :
402 : /* Implementation file */
403 : NS_IMPL_ISUPPORTS1(nsXPCComponents_ID, nsIXPCComponents_ID)
404 :
405 : nsXPCComponents_ID::nsXPCComponents_ID()
406 : {
407 : /* member initializers and constructor code */
408 : }
409 :
410 : nsXPCComponents_ID::~nsXPCComponents_ID()
411 : {
412 : /* destructor code */
413 : }
414 :
415 : /* End of implementation class template. */
416 : #endif
417 :
418 :
419 : /* starting interface: nsIXPCComponents_Exception */
420 : #define NS_IXPCCOMPONENTS_EXCEPTION_IID_STR "5bf039c0-e028-11d3-8f5d-0010a4e73d9a"
421 :
422 : #define NS_IXPCCOMPONENTS_EXCEPTION_IID \
423 : {0x5bf039c0, 0xe028, 0x11d3, \
424 : { 0x8f, 0x5d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
425 :
426 361 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_Exception : public nsISupports {
427 : public:
428 :
429 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_EXCEPTION_IID)
430 :
431 : };
432 :
433 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Exception, NS_IXPCCOMPONENTS_EXCEPTION_IID)
434 :
435 : /* Use this macro when declaring classes that implement this interface. */
436 : #define NS_DECL_NSIXPCCOMPONENTS_EXCEPTION \
437 : /* no methods! */
438 :
439 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
440 : #define NS_FORWARD_NSIXPCCOMPONENTS_EXCEPTION(_to) \
441 : /* no methods! */
442 :
443 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
444 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_EXCEPTION(_to) \
445 : /* no methods! */
446 :
447 : #if 0
448 : /* Use the code below as a template for the implementation class for this interface. */
449 :
450 : /* Header file */
451 : class nsXPCComponents_Exception : public nsIXPCComponents_Exception
452 : {
453 : public:
454 : NS_DECL_ISUPPORTS
455 : NS_DECL_NSIXPCCOMPONENTS_EXCEPTION
456 :
457 : nsXPCComponents_Exception();
458 :
459 : private:
460 : ~nsXPCComponents_Exception();
461 :
462 : protected:
463 : /* additional members */
464 : };
465 :
466 : /* Implementation file */
467 : NS_IMPL_ISUPPORTS1(nsXPCComponents_Exception, nsIXPCComponents_Exception)
468 :
469 : nsXPCComponents_Exception::nsXPCComponents_Exception()
470 : {
471 : /* member initializers and constructor code */
472 : }
473 :
474 : nsXPCComponents_Exception::~nsXPCComponents_Exception()
475 : {
476 : /* destructor code */
477 : }
478 :
479 : /* End of implementation class template. */
480 : #endif
481 :
482 :
483 : /* starting interface: nsIXPCComponents_Constructor */
484 : #define NS_IXPCCOMPONENTS_CONSTRUCTOR_IID_STR "88655640-e028-11d3-8f5d-0010a4e73d9a"
485 :
486 : #define NS_IXPCCOMPONENTS_CONSTRUCTOR_IID \
487 : {0x88655640, 0xe028, 0x11d3, \
488 : { 0x8f, 0x5d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
489 :
490 1074 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_Constructor : public nsISupports {
491 : public:
492 :
493 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_CONSTRUCTOR_IID)
494 :
495 : };
496 :
497 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Constructor, NS_IXPCCOMPONENTS_CONSTRUCTOR_IID)
498 :
499 : /* Use this macro when declaring classes that implement this interface. */
500 : #define NS_DECL_NSIXPCCOMPONENTS_CONSTRUCTOR \
501 : /* no methods! */
502 :
503 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
504 : #define NS_FORWARD_NSIXPCCOMPONENTS_CONSTRUCTOR(_to) \
505 : /* no methods! */
506 :
507 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
508 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_CONSTRUCTOR(_to) \
509 : /* no methods! */
510 :
511 : #if 0
512 : /* Use the code below as a template for the implementation class for this interface. */
513 :
514 : /* Header file */
515 : class nsXPCComponents_Constructor : public nsIXPCComponents_Constructor
516 : {
517 : public:
518 : NS_DECL_ISUPPORTS
519 : NS_DECL_NSIXPCCOMPONENTS_CONSTRUCTOR
520 :
521 : nsXPCComponents_Constructor();
522 :
523 : private:
524 : ~nsXPCComponents_Constructor();
525 :
526 : protected:
527 : /* additional members */
528 : };
529 :
530 : /* Implementation file */
531 : NS_IMPL_ISUPPORTS1(nsXPCComponents_Constructor, nsIXPCComponents_Constructor)
532 :
533 : nsXPCComponents_Constructor::nsXPCComponents_Constructor()
534 : {
535 : /* member initializers and constructor code */
536 : }
537 :
538 : nsXPCComponents_Constructor::~nsXPCComponents_Constructor()
539 : {
540 : /* destructor code */
541 : }
542 :
543 : /* End of implementation class template. */
544 : #endif
545 :
546 :
547 : /* starting interface: nsIXPCConstructor */
548 : #define NS_IXPCCONSTRUCTOR_IID_STR "c814ca20-e0dc-11d3-8f5f-0010a4e73d9a"
549 :
550 : #define NS_IXPCCONSTRUCTOR_IID \
551 : {0xc814ca20, 0xe0dc, 0x11d3, \
552 : { 0x8f, 0x5f, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
553 :
554 4556 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCConstructor : public nsISupports {
555 : public:
556 :
557 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCONSTRUCTOR_IID)
558 :
559 : /* readonly attribute nsIJSCID classID; */
560 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsIJSCID * *aClassID) = 0;
561 :
562 : /* readonly attribute nsIJSIID interfaceID; */
563 : NS_SCRIPTABLE NS_IMETHOD GetInterfaceID(nsIJSIID * *aInterfaceID) = 0;
564 :
565 : /* readonly attribute string initializer; */
566 : NS_SCRIPTABLE NS_IMETHOD GetInitializer(char * *aInitializer) = 0;
567 :
568 : };
569 :
570 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCConstructor, NS_IXPCCONSTRUCTOR_IID)
571 :
572 : /* Use this macro when declaring classes that implement this interface. */
573 : #define NS_DECL_NSIXPCCONSTRUCTOR \
574 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsIJSCID * *aClassID); \
575 : NS_SCRIPTABLE NS_IMETHOD GetInterfaceID(nsIJSIID * *aInterfaceID); \
576 : NS_SCRIPTABLE NS_IMETHOD GetInitializer(char * *aInitializer);
577 :
578 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
579 : #define NS_FORWARD_NSIXPCCONSTRUCTOR(_to) \
580 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsIJSCID * *aClassID) { return _to GetClassID(aClassID); } \
581 : NS_SCRIPTABLE NS_IMETHOD GetInterfaceID(nsIJSIID * *aInterfaceID) { return _to GetInterfaceID(aInterfaceID); } \
582 : NS_SCRIPTABLE NS_IMETHOD GetInitializer(char * *aInitializer) { return _to GetInitializer(aInitializer); }
583 :
584 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
585 : #define NS_FORWARD_SAFE_NSIXPCCONSTRUCTOR(_to) \
586 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsIJSCID * *aClassID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassID(aClassID); } \
587 : NS_SCRIPTABLE NS_IMETHOD GetInterfaceID(nsIJSIID * *aInterfaceID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaceID(aInterfaceID); } \
588 : NS_SCRIPTABLE NS_IMETHOD GetInitializer(char * *aInitializer) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInitializer(aInitializer); }
589 :
590 : #if 0
591 : /* Use the code below as a template for the implementation class for this interface. */
592 :
593 : /* Header file */
594 : class nsXPCConstructor : public nsIXPCConstructor
595 : {
596 : public:
597 : NS_DECL_ISUPPORTS
598 : NS_DECL_NSIXPCCONSTRUCTOR
599 :
600 : nsXPCConstructor();
601 :
602 : private:
603 : ~nsXPCConstructor();
604 :
605 : protected:
606 : /* additional members */
607 : };
608 :
609 : /* Implementation file */
610 : NS_IMPL_ISUPPORTS1(nsXPCConstructor, nsIXPCConstructor)
611 :
612 : nsXPCConstructor::nsXPCConstructor()
613 : {
614 : /* member initializers and constructor code */
615 : }
616 :
617 : nsXPCConstructor::~nsXPCConstructor()
618 : {
619 : /* destructor code */
620 : }
621 :
622 : /* readonly attribute nsIJSCID classID; */
623 : NS_IMETHODIMP nsXPCConstructor::GetClassID(nsIJSCID * *aClassID)
624 : {
625 : return NS_ERROR_NOT_IMPLEMENTED;
626 : }
627 :
628 : /* readonly attribute nsIJSIID interfaceID; */
629 : NS_IMETHODIMP nsXPCConstructor::GetInterfaceID(nsIJSIID * *aInterfaceID)
630 : {
631 : return NS_ERROR_NOT_IMPLEMENTED;
632 : }
633 :
634 : /* readonly attribute string initializer; */
635 : NS_IMETHODIMP nsXPCConstructor::GetInitializer(char * *aInitializer)
636 : {
637 : return NS_ERROR_NOT_IMPLEMENTED;
638 : }
639 :
640 : /* End of implementation class template. */
641 : #endif
642 :
643 :
644 : /* starting interface: nsIXPCComponents_utils_Sandbox */
645 : #define NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID_STR "4f8ae0dc-d266-4a32-875b-6a9de71a8ce9"
646 :
647 : #define NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID \
648 : {0x4f8ae0dc, 0xd266, 0x4a32, \
649 : { 0x87, 0x5b, 0x6a, 0x9d, 0xe7, 0x1a, 0x8c, 0xe9 }}
650 :
651 209 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_utils_Sandbox : public nsISupports {
652 : public:
653 :
654 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID)
655 :
656 : };
657 :
658 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_utils_Sandbox, NS_IXPCCOMPONENTS_UTILS_SANDBOX_IID)
659 :
660 : /* Use this macro when declaring classes that implement this interface. */
661 : #define NS_DECL_NSIXPCCOMPONENTS_UTILS_SANDBOX \
662 : /* no methods! */
663 :
664 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
665 : #define NS_FORWARD_NSIXPCCOMPONENTS_UTILS_SANDBOX(_to) \
666 : /* no methods! */
667 :
668 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
669 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_UTILS_SANDBOX(_to) \
670 : /* no methods! */
671 :
672 : #if 0
673 : /* Use the code below as a template for the implementation class for this interface. */
674 :
675 : /* Header file */
676 : class nsXPCComponents_utils_Sandbox : public nsIXPCComponents_utils_Sandbox
677 : {
678 : public:
679 : NS_DECL_ISUPPORTS
680 : NS_DECL_NSIXPCCOMPONENTS_UTILS_SANDBOX
681 :
682 : nsXPCComponents_utils_Sandbox();
683 :
684 : private:
685 : ~nsXPCComponents_utils_Sandbox();
686 :
687 : protected:
688 : /* additional members */
689 : };
690 :
691 : /* Implementation file */
692 : NS_IMPL_ISUPPORTS1(nsXPCComponents_utils_Sandbox, nsIXPCComponents_utils_Sandbox)
693 :
694 : nsXPCComponents_utils_Sandbox::nsXPCComponents_utils_Sandbox()
695 : {
696 : /* member initializers and constructor code */
697 : }
698 :
699 : nsXPCComponents_utils_Sandbox::~nsXPCComponents_utils_Sandbox()
700 : {
701 : /* destructor code */
702 : }
703 :
704 : /* End of implementation class template. */
705 : #endif
706 :
707 :
708 : /* starting interface: ScheduledGCCallback */
709 : #define SCHEDULEDGCCALLBACK_IID_STR "71000535-b0fd-44d1-8ce0-909760e3953c"
710 :
711 : #define SCHEDULEDGCCALLBACK_IID \
712 : {0x71000535, 0xb0fd, 0x44d1, \
713 : { 0x8c, 0xe0, 0x90, 0x97, 0x60, 0xe3, 0x95, 0x3c }}
714 :
715 : class NS_NO_VTABLE NS_SCRIPTABLE ScheduledGCCallback : public nsISupports {
716 : public:
717 :
718 : NS_DECLARE_STATIC_IID_ACCESSOR(SCHEDULEDGCCALLBACK_IID)
719 :
720 : /* void callback (); */
721 : NS_SCRIPTABLE NS_IMETHOD Callback(void) = 0;
722 :
723 : };
724 :
725 : NS_DEFINE_STATIC_IID_ACCESSOR(ScheduledGCCallback, SCHEDULEDGCCALLBACK_IID)
726 :
727 : /* Use this macro when declaring classes that implement this interface. */
728 : #define NS_DECL_SCHEDULEDGCCALLBACK \
729 : NS_SCRIPTABLE NS_IMETHOD Callback(void);
730 :
731 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
732 : #define NS_FORWARD_SCHEDULEDGCCALLBACK(_to) \
733 : NS_SCRIPTABLE NS_IMETHOD Callback(void) { return _to Callback(); }
734 :
735 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
736 : #define NS_FORWARD_SAFE_SCHEDULEDGCCALLBACK(_to) \
737 : NS_SCRIPTABLE NS_IMETHOD Callback(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Callback(); }
738 :
739 : #if 0
740 : /* Use the code below as a template for the implementation class for this interface. */
741 :
742 : /* Header file */
743 : class _MYCLASS_ : public ScheduledGCCallback
744 : {
745 : public:
746 : NS_DECL_ISUPPORTS
747 : NS_DECL_SCHEDULEDGCCALLBACK
748 :
749 : _MYCLASS_();
750 :
751 : private:
752 : ~_MYCLASS_();
753 :
754 : protected:
755 : /* additional members */
756 : };
757 :
758 : /* Implementation file */
759 : NS_IMPL_ISUPPORTS1(_MYCLASS_, ScheduledGCCallback)
760 :
761 : _MYCLASS_::_MYCLASS_()
762 : {
763 : /* member initializers and constructor code */
764 : }
765 :
766 : _MYCLASS_::~_MYCLASS_()
767 : {
768 : /* destructor code */
769 : }
770 :
771 : /* void callback (); */
772 : NS_IMETHODIMP _MYCLASS_::Callback()
773 : {
774 : return NS_ERROR_NOT_IMPLEMENTED;
775 : }
776 :
777 : /* End of implementation class template. */
778 : #endif
779 :
780 :
781 : /* starting interface: nsIXPCComponents_Utils */
782 : #define NS_IXPCCOMPONENTS_UTILS_IID_STR "9e43a260-5db2-11e1-b86c-0800200c9a66"
783 :
784 : #define NS_IXPCCOMPONENTS_UTILS_IID \
785 : {0x9e43a260, 0x5db2, 0x11e1, \
786 : { 0xb8, 0x6c, 0x08, 0x00, 0x20, 0x0c, 0x9a, 0x66 }}
787 :
788 11477 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents_Utils : public nsISupports {
789 : public:
790 :
791 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_UTILS_IID)
792 :
793 : /* [implicit_jscontext] void reportError (in jsval error); */
794 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx) = 0;
795 :
796 : /* [implicit_jscontext] jsval lookupMethod (in jsval obj, in jsval name); */
797 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM) = 0;
798 :
799 : /* readonly attribute nsIXPCComponents_utils_Sandbox Sandbox; */
800 : NS_SCRIPTABLE NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox * *aSandbox) = 0;
801 :
802 : /* [implicit_jscontext,optional_argc] jsval evalInSandbox (in AString source, in jsval sandbox, [optional] in jsval version, [optional] in jsval filename, [optional] in long lineNo); */
803 : NS_SCRIPTABLE NS_IMETHOD EvalInSandbox(const nsAString & source, const JS::Value & sandbox, const JS::Value & version, const JS::Value & filename, PRInt32 lineNo, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM) = 0;
804 :
805 : /* [implicit_jscontext,optional_argc] jsval import (in AUTF8String aResourceURI, [optional] in jsval targetObj); */
806 : NS_SCRIPTABLE NS_IMETHOD Import(const nsACString & aResourceURI, const JS::Value & targetObj, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM) = 0;
807 :
808 : /* void unload (in AUTF8String registryLocation); */
809 : NS_SCRIPTABLE NS_IMETHOD Unload(const nsACString & registryLocation) = 0;
810 :
811 : /* [implicit_jscontext] xpcIJSWeakReference getWeakReference (in jsval obj); */
812 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(const JS::Value & obj, JSContext* cx, xpcIJSWeakReference * *_retval NS_OUTPARAM) = 0;
813 :
814 : /* [implicit_jscontext] void forceGC (); */
815 : NS_SCRIPTABLE NS_IMETHOD ForceGC(JSContext* cx) = 0;
816 :
817 : /* [implicit_jscontext] void forceShrinkingGC (); */
818 : NS_SCRIPTABLE NS_IMETHOD ForceShrinkingGC(JSContext* cx) = 0;
819 :
820 : /* [implicit_jscontext] void schedulePreciseGC (in ScheduledGCCallback callback); */
821 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback, JSContext* cx) = 0;
822 :
823 : /* [implicit_jscontext] void schedulePreciseShrinkingGC (in ScheduledGCCallback callback); */
824 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback, JSContext* cx) = 0;
825 :
826 : /* [implicit_jscontext] jsval nondeterministicGetWeakMapKeys (in jsval aMap); */
827 : NS_SCRIPTABLE NS_IMETHOD NondeterministicGetWeakMapKeys(const JS::Value & aMap, JSContext* cx, JS::Value *_retval NS_OUTPARAM) = 0;
828 :
829 : /* [implicit_jscontext] jsval getJSTestingFunctions (); */
830 : NS_SCRIPTABLE NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::Value *_retval NS_OUTPARAM) = 0;
831 :
832 : /* [implicit_jscontext] jsval getGlobalForObject (in jsval obj); */
833 : NS_SCRIPTABLE NS_IMETHOD GetGlobalForObject(const JS::Value & obj, JSContext* cx, JS::Value *_retval NS_OUTPARAM) = 0;
834 :
835 : /* [implicit_jscontext] jsval createObjectIn (in jsval vobj); */
836 : NS_SCRIPTABLE NS_IMETHOD CreateObjectIn(const JS::Value & vobj, JSContext* cx, JS::Value *_retval NS_OUTPARAM) = 0;
837 :
838 : /* [implicit_jscontext] void makeObjectPropsNormal (in jsval vobj); */
839 : NS_SCRIPTABLE NS_IMETHOD MakeObjectPropsNormal(const JS::Value & vobj, JSContext* cx) = 0;
840 :
841 : /* [implicit_jscontext] attribute boolean strict; */
842 : NS_SCRIPTABLE NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) = 0;
843 : NS_SCRIPTABLE NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) = 0;
844 :
845 : /* [implicit_jscontext] attribute boolean werror; */
846 : NS_SCRIPTABLE NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) = 0;
847 : NS_SCRIPTABLE NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) = 0;
848 :
849 : /* [implicit_jscontext] attribute boolean atline; */
850 : NS_SCRIPTABLE NS_IMETHOD GetAtline(JSContext* cx, bool *aAtline) = 0;
851 : NS_SCRIPTABLE NS_IMETHOD SetAtline(JSContext* cx, bool aAtline) = 0;
852 :
853 : /* [implicit_jscontext] attribute boolean xml; */
854 : NS_SCRIPTABLE NS_IMETHOD GetXml(JSContext* cx, bool *aXml) = 0;
855 : NS_SCRIPTABLE NS_IMETHOD SetXml(JSContext* cx, bool aXml) = 0;
856 :
857 : /* [implicit_jscontext] attribute boolean relimit; */
858 : NS_SCRIPTABLE NS_IMETHOD GetRelimit(JSContext* cx, bool *aRelimit) = 0;
859 : NS_SCRIPTABLE NS_IMETHOD SetRelimit(JSContext* cx, bool aRelimit) = 0;
860 :
861 : /* [implicit_jscontext] attribute boolean methodjit; */
862 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit(JSContext* cx, bool *aMethodjit) = 0;
863 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit(JSContext* cx, bool aMethodjit) = 0;
864 :
865 : /* [implicit_jscontext] attribute boolean methodjit_always; */
866 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit_always(JSContext* cx, bool *aMethodjit_always) = 0;
867 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit_always(JSContext* cx, bool aMethodjit_always) = 0;
868 :
869 : /* [implicit_jscontext] void setGCZeal (in long zeal); */
870 : NS_SCRIPTABLE NS_IMETHOD SetGCZeal(PRInt32 zeal, JSContext* cx) = 0;
871 :
872 : };
873 :
874 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents_Utils, NS_IXPCCOMPONENTS_UTILS_IID)
875 :
876 : /* Use this macro when declaring classes that implement this interface. */
877 : #define NS_DECL_NSIXPCCOMPONENTS_UTILS \
878 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx); \
879 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM); \
880 : NS_SCRIPTABLE NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox * *aSandbox); \
881 : NS_SCRIPTABLE NS_IMETHOD EvalInSandbox(const nsAString & source, const JS::Value & sandbox, const JS::Value & version, const JS::Value & filename, PRInt32 lineNo, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM); \
882 : NS_SCRIPTABLE NS_IMETHOD Import(const nsACString & aResourceURI, const JS::Value & targetObj, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM); \
883 : NS_SCRIPTABLE NS_IMETHOD Unload(const nsACString & registryLocation); \
884 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(const JS::Value & obj, JSContext* cx, xpcIJSWeakReference * *_retval NS_OUTPARAM); \
885 : NS_SCRIPTABLE NS_IMETHOD ForceGC(JSContext* cx); \
886 : NS_SCRIPTABLE NS_IMETHOD ForceShrinkingGC(JSContext* cx); \
887 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback, JSContext* cx); \
888 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback, JSContext* cx); \
889 : NS_SCRIPTABLE NS_IMETHOD NondeterministicGetWeakMapKeys(const JS::Value & aMap, JSContext* cx, JS::Value *_retval NS_OUTPARAM); \
890 : NS_SCRIPTABLE NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::Value *_retval NS_OUTPARAM); \
891 : NS_SCRIPTABLE NS_IMETHOD GetGlobalForObject(const JS::Value & obj, JSContext* cx, JS::Value *_retval NS_OUTPARAM); \
892 : NS_SCRIPTABLE NS_IMETHOD CreateObjectIn(const JS::Value & vobj, JSContext* cx, JS::Value *_retval NS_OUTPARAM); \
893 : NS_SCRIPTABLE NS_IMETHOD MakeObjectPropsNormal(const JS::Value & vobj, JSContext* cx); \
894 : NS_SCRIPTABLE NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict); \
895 : NS_SCRIPTABLE NS_IMETHOD SetStrict(JSContext* cx, bool aStrict); \
896 : NS_SCRIPTABLE NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror); \
897 : NS_SCRIPTABLE NS_IMETHOD SetWerror(JSContext* cx, bool aWerror); \
898 : NS_SCRIPTABLE NS_IMETHOD GetAtline(JSContext* cx, bool *aAtline); \
899 : NS_SCRIPTABLE NS_IMETHOD SetAtline(JSContext* cx, bool aAtline); \
900 : NS_SCRIPTABLE NS_IMETHOD GetXml(JSContext* cx, bool *aXml); \
901 : NS_SCRIPTABLE NS_IMETHOD SetXml(JSContext* cx, bool aXml); \
902 : NS_SCRIPTABLE NS_IMETHOD GetRelimit(JSContext* cx, bool *aRelimit); \
903 : NS_SCRIPTABLE NS_IMETHOD SetRelimit(JSContext* cx, bool aRelimit); \
904 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit(JSContext* cx, bool *aMethodjit); \
905 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit(JSContext* cx, bool aMethodjit); \
906 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit_always(JSContext* cx, bool *aMethodjit_always); \
907 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit_always(JSContext* cx, bool aMethodjit_always); \
908 : NS_SCRIPTABLE NS_IMETHOD SetGCZeal(PRInt32 zeal, JSContext* cx);
909 :
910 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
911 : #define NS_FORWARD_NSIXPCCOMPONENTS_UTILS(_to) \
912 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx) { return _to ReportError(error, cx); } \
913 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return _to LookupMethod(obj, name, cx, _retval); } \
914 : NS_SCRIPTABLE NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox * *aSandbox) { return _to GetSandbox(aSandbox); } \
915 : NS_SCRIPTABLE NS_IMETHOD EvalInSandbox(const nsAString & source, const JS::Value & sandbox, const JS::Value & version, const JS::Value & filename, PRInt32 lineNo, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM) { return _to EvalInSandbox(source, sandbox, version, filename, lineNo, cx, _argc, _retval); } \
916 : NS_SCRIPTABLE NS_IMETHOD Import(const nsACString & aResourceURI, const JS::Value & targetObj, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM) { return _to Import(aResourceURI, targetObj, cx, _argc, _retval); } \
917 : NS_SCRIPTABLE NS_IMETHOD Unload(const nsACString & registryLocation) { return _to Unload(registryLocation); } \
918 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(const JS::Value & obj, JSContext* cx, xpcIJSWeakReference * *_retval NS_OUTPARAM) { return _to GetWeakReference(obj, cx, _retval); } \
919 : NS_SCRIPTABLE NS_IMETHOD ForceGC(JSContext* cx) { return _to ForceGC(cx); } \
920 : NS_SCRIPTABLE NS_IMETHOD ForceShrinkingGC(JSContext* cx) { return _to ForceShrinkingGC(cx); } \
921 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback, JSContext* cx) { return _to SchedulePreciseGC(callback, cx); } \
922 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback, JSContext* cx) { return _to SchedulePreciseShrinkingGC(callback, cx); } \
923 : NS_SCRIPTABLE NS_IMETHOD NondeterministicGetWeakMapKeys(const JS::Value & aMap, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return _to NondeterministicGetWeakMapKeys(aMap, cx, _retval); } \
924 : NS_SCRIPTABLE NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return _to GetJSTestingFunctions(cx, _retval); } \
925 : NS_SCRIPTABLE NS_IMETHOD GetGlobalForObject(const JS::Value & obj, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return _to GetGlobalForObject(obj, cx, _retval); } \
926 : NS_SCRIPTABLE NS_IMETHOD CreateObjectIn(const JS::Value & vobj, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return _to CreateObjectIn(vobj, cx, _retval); } \
927 : NS_SCRIPTABLE NS_IMETHOD MakeObjectPropsNormal(const JS::Value & vobj, JSContext* cx) { return _to MakeObjectPropsNormal(vobj, cx); } \
928 : NS_SCRIPTABLE NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) { return _to GetStrict(cx, aStrict); } \
929 : NS_SCRIPTABLE NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) { return _to SetStrict(cx, aStrict); } \
930 : NS_SCRIPTABLE NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) { return _to GetWerror(cx, aWerror); } \
931 : NS_SCRIPTABLE NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) { return _to SetWerror(cx, aWerror); } \
932 : NS_SCRIPTABLE NS_IMETHOD GetAtline(JSContext* cx, bool *aAtline) { return _to GetAtline(cx, aAtline); } \
933 : NS_SCRIPTABLE NS_IMETHOD SetAtline(JSContext* cx, bool aAtline) { return _to SetAtline(cx, aAtline); } \
934 : NS_SCRIPTABLE NS_IMETHOD GetXml(JSContext* cx, bool *aXml) { return _to GetXml(cx, aXml); } \
935 : NS_SCRIPTABLE NS_IMETHOD SetXml(JSContext* cx, bool aXml) { return _to SetXml(cx, aXml); } \
936 : NS_SCRIPTABLE NS_IMETHOD GetRelimit(JSContext* cx, bool *aRelimit) { return _to GetRelimit(cx, aRelimit); } \
937 : NS_SCRIPTABLE NS_IMETHOD SetRelimit(JSContext* cx, bool aRelimit) { return _to SetRelimit(cx, aRelimit); } \
938 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit(JSContext* cx, bool *aMethodjit) { return _to GetMethodjit(cx, aMethodjit); } \
939 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit(JSContext* cx, bool aMethodjit) { return _to SetMethodjit(cx, aMethodjit); } \
940 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit_always(JSContext* cx, bool *aMethodjit_always) { return _to GetMethodjit_always(cx, aMethodjit_always); } \
941 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit_always(JSContext* cx, bool aMethodjit_always) { return _to SetMethodjit_always(cx, aMethodjit_always); } \
942 : NS_SCRIPTABLE NS_IMETHOD SetGCZeal(PRInt32 zeal, JSContext* cx) { return _to SetGCZeal(zeal, cx); }
943 :
944 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
945 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS_UTILS(_to) \
946 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->ReportError(error, cx); } \
947 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->LookupMethod(obj, name, cx, _retval); } \
948 : NS_SCRIPTABLE NS_IMETHOD GetSandbox(nsIXPCComponents_utils_Sandbox * *aSandbox) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSandbox(aSandbox); } \
949 : NS_SCRIPTABLE NS_IMETHOD EvalInSandbox(const nsAString & source, const JS::Value & sandbox, const JS::Value & version, const JS::Value & filename, PRInt32 lineNo, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->EvalInSandbox(source, sandbox, version, filename, lineNo, cx, _argc, _retval); } \
950 : NS_SCRIPTABLE NS_IMETHOD Import(const nsACString & aResourceURI, const JS::Value & targetObj, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Import(aResourceURI, targetObj, cx, _argc, _retval); } \
951 : NS_SCRIPTABLE NS_IMETHOD Unload(const nsACString & registryLocation) { return !_to ? NS_ERROR_NULL_POINTER : _to->Unload(registryLocation); } \
952 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(const JS::Value & obj, JSContext* cx, xpcIJSWeakReference * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWeakReference(obj, cx, _retval); } \
953 : NS_SCRIPTABLE NS_IMETHOD ForceGC(JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->ForceGC(cx); } \
954 : NS_SCRIPTABLE NS_IMETHOD ForceShrinkingGC(JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->ForceShrinkingGC(cx); } \
955 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseGC(ScheduledGCCallback *callback, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->SchedulePreciseGC(callback, cx); } \
956 : NS_SCRIPTABLE NS_IMETHOD SchedulePreciseShrinkingGC(ScheduledGCCallback *callback, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->SchedulePreciseShrinkingGC(callback, cx); } \
957 : NS_SCRIPTABLE NS_IMETHOD NondeterministicGetWeakMapKeys(const JS::Value & aMap, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->NondeterministicGetWeakMapKeys(aMap, cx, _retval); } \
958 : NS_SCRIPTABLE NS_IMETHOD GetJSTestingFunctions(JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetJSTestingFunctions(cx, _retval); } \
959 : NS_SCRIPTABLE NS_IMETHOD GetGlobalForObject(const JS::Value & obj, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGlobalForObject(obj, cx, _retval); } \
960 : NS_SCRIPTABLE NS_IMETHOD CreateObjectIn(const JS::Value & vobj, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateObjectIn(vobj, cx, _retval); } \
961 : NS_SCRIPTABLE NS_IMETHOD MakeObjectPropsNormal(const JS::Value & vobj, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->MakeObjectPropsNormal(vobj, cx); } \
962 : NS_SCRIPTABLE NS_IMETHOD GetStrict(JSContext* cx, bool *aStrict) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStrict(cx, aStrict); } \
963 : NS_SCRIPTABLE NS_IMETHOD SetStrict(JSContext* cx, bool aStrict) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStrict(cx, aStrict); } \
964 : NS_SCRIPTABLE NS_IMETHOD GetWerror(JSContext* cx, bool *aWerror) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWerror(cx, aWerror); } \
965 : NS_SCRIPTABLE NS_IMETHOD SetWerror(JSContext* cx, bool aWerror) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetWerror(cx, aWerror); } \
966 : NS_SCRIPTABLE NS_IMETHOD GetAtline(JSContext* cx, bool *aAtline) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAtline(cx, aAtline); } \
967 : NS_SCRIPTABLE NS_IMETHOD SetAtline(JSContext* cx, bool aAtline) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAtline(cx, aAtline); } \
968 : NS_SCRIPTABLE NS_IMETHOD GetXml(JSContext* cx, bool *aXml) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetXml(cx, aXml); } \
969 : NS_SCRIPTABLE NS_IMETHOD SetXml(JSContext* cx, bool aXml) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetXml(cx, aXml); } \
970 : NS_SCRIPTABLE NS_IMETHOD GetRelimit(JSContext* cx, bool *aRelimit) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRelimit(cx, aRelimit); } \
971 : NS_SCRIPTABLE NS_IMETHOD SetRelimit(JSContext* cx, bool aRelimit) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetRelimit(cx, aRelimit); } \
972 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit(JSContext* cx, bool *aMethodjit) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMethodjit(cx, aMethodjit); } \
973 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit(JSContext* cx, bool aMethodjit) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMethodjit(cx, aMethodjit); } \
974 : NS_SCRIPTABLE NS_IMETHOD GetMethodjit_always(JSContext* cx, bool *aMethodjit_always) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMethodjit_always(cx, aMethodjit_always); } \
975 : NS_SCRIPTABLE NS_IMETHOD SetMethodjit_always(JSContext* cx, bool aMethodjit_always) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMethodjit_always(cx, aMethodjit_always); } \
976 : NS_SCRIPTABLE NS_IMETHOD SetGCZeal(PRInt32 zeal, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetGCZeal(zeal, cx); }
977 :
978 : #if 0
979 : /* Use the code below as a template for the implementation class for this interface. */
980 :
981 : /* Header file */
982 : class nsXPCComponents_Utils : public nsIXPCComponents_Utils
983 : {
984 : public:
985 : NS_DECL_ISUPPORTS
986 : NS_DECL_NSIXPCCOMPONENTS_UTILS
987 :
988 : nsXPCComponents_Utils();
989 :
990 : private:
991 : ~nsXPCComponents_Utils();
992 :
993 : protected:
994 : /* additional members */
995 : };
996 :
997 : /* Implementation file */
998 : NS_IMPL_ISUPPORTS1(nsXPCComponents_Utils, nsIXPCComponents_Utils)
999 :
1000 : nsXPCComponents_Utils::nsXPCComponents_Utils()
1001 : {
1002 : /* member initializers and constructor code */
1003 : }
1004 :
1005 : nsXPCComponents_Utils::~nsXPCComponents_Utils()
1006 : {
1007 : /* destructor code */
1008 : }
1009 :
1010 : /* [implicit_jscontext] void reportError (in jsval error); */
1011 : NS_IMETHODIMP nsXPCComponents_Utils::ReportError(const JS::Value & error, JSContext* cx)
1012 : {
1013 : return NS_ERROR_NOT_IMPLEMENTED;
1014 : }
1015 :
1016 : /* [implicit_jscontext] jsval lookupMethod (in jsval obj, in jsval name); */
1017 : NS_IMETHODIMP nsXPCComponents_Utils::LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM)
1018 : {
1019 : return NS_ERROR_NOT_IMPLEMENTED;
1020 : }
1021 :
1022 : /* readonly attribute nsIXPCComponents_utils_Sandbox Sandbox; */
1023 : NS_IMETHODIMP nsXPCComponents_Utils::GetSandbox(nsIXPCComponents_utils_Sandbox * *aSandbox)
1024 : {
1025 : return NS_ERROR_NOT_IMPLEMENTED;
1026 : }
1027 :
1028 : /* [implicit_jscontext,optional_argc] jsval evalInSandbox (in AString source, in jsval sandbox, [optional] in jsval version, [optional] in jsval filename, [optional] in long lineNo); */
1029 : NS_IMETHODIMP nsXPCComponents_Utils::EvalInSandbox(const nsAString & source, const JS::Value & sandbox, const JS::Value & version, const JS::Value & filename, PRInt32 lineNo, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM)
1030 : {
1031 : return NS_ERROR_NOT_IMPLEMENTED;
1032 : }
1033 :
1034 : /* [implicit_jscontext,optional_argc] jsval import (in AUTF8String aResourceURI, [optional] in jsval targetObj); */
1035 : NS_IMETHODIMP nsXPCComponents_Utils::Import(const nsACString & aResourceURI, const JS::Value & targetObj, JSContext* cx, PRUint8 _argc, JS::Value *_retval NS_OUTPARAM)
1036 : {
1037 : return NS_ERROR_NOT_IMPLEMENTED;
1038 : }
1039 :
1040 : /* void unload (in AUTF8String registryLocation); */
1041 : NS_IMETHODIMP nsXPCComponents_Utils::Unload(const nsACString & registryLocation)
1042 : {
1043 : return NS_ERROR_NOT_IMPLEMENTED;
1044 : }
1045 :
1046 : /* [implicit_jscontext] xpcIJSWeakReference getWeakReference (in jsval obj); */
1047 : NS_IMETHODIMP nsXPCComponents_Utils::GetWeakReference(const JS::Value & obj, JSContext* cx, xpcIJSWeakReference * *_retval NS_OUTPARAM)
1048 : {
1049 : return NS_ERROR_NOT_IMPLEMENTED;
1050 : }
1051 :
1052 : /* [implicit_jscontext] void forceGC (); */
1053 : NS_IMETHODIMP nsXPCComponents_Utils::ForceGC(JSContext* cx)
1054 : {
1055 : return NS_ERROR_NOT_IMPLEMENTED;
1056 : }
1057 :
1058 : /* [implicit_jscontext] void forceShrinkingGC (); */
1059 : NS_IMETHODIMP nsXPCComponents_Utils::ForceShrinkingGC(JSContext* cx)
1060 : {
1061 : return NS_ERROR_NOT_IMPLEMENTED;
1062 : }
1063 :
1064 : /* [implicit_jscontext] void schedulePreciseGC (in ScheduledGCCallback callback); */
1065 : NS_IMETHODIMP nsXPCComponents_Utils::SchedulePreciseGC(ScheduledGCCallback *callback, JSContext* cx)
1066 : {
1067 : return NS_ERROR_NOT_IMPLEMENTED;
1068 : }
1069 :
1070 : /* [implicit_jscontext] void schedulePreciseShrinkingGC (in ScheduledGCCallback callback); */
1071 : NS_IMETHODIMP nsXPCComponents_Utils::SchedulePreciseShrinkingGC(ScheduledGCCallback *callback, JSContext* cx)
1072 : {
1073 : return NS_ERROR_NOT_IMPLEMENTED;
1074 : }
1075 :
1076 : /* [implicit_jscontext] jsval nondeterministicGetWeakMapKeys (in jsval aMap); */
1077 : NS_IMETHODIMP nsXPCComponents_Utils::NondeterministicGetWeakMapKeys(const JS::Value & aMap, JSContext* cx, JS::Value *_retval NS_OUTPARAM)
1078 : {
1079 : return NS_ERROR_NOT_IMPLEMENTED;
1080 : }
1081 :
1082 : /* [implicit_jscontext] jsval getJSTestingFunctions (); */
1083 : NS_IMETHODIMP nsXPCComponents_Utils::GetJSTestingFunctions(JSContext* cx, JS::Value *_retval NS_OUTPARAM)
1084 : {
1085 : return NS_ERROR_NOT_IMPLEMENTED;
1086 : }
1087 :
1088 : /* [implicit_jscontext] jsval getGlobalForObject (in jsval obj); */
1089 : NS_IMETHODIMP nsXPCComponents_Utils::GetGlobalForObject(const JS::Value & obj, JSContext* cx, JS::Value *_retval NS_OUTPARAM)
1090 : {
1091 : return NS_ERROR_NOT_IMPLEMENTED;
1092 : }
1093 :
1094 : /* [implicit_jscontext] jsval createObjectIn (in jsval vobj); */
1095 : NS_IMETHODIMP nsXPCComponents_Utils::CreateObjectIn(const JS::Value & vobj, JSContext* cx, JS::Value *_retval NS_OUTPARAM)
1096 : {
1097 : return NS_ERROR_NOT_IMPLEMENTED;
1098 : }
1099 :
1100 : /* [implicit_jscontext] void makeObjectPropsNormal (in jsval vobj); */
1101 : NS_IMETHODIMP nsXPCComponents_Utils::MakeObjectPropsNormal(const JS::Value & vobj, JSContext* cx)
1102 : {
1103 : return NS_ERROR_NOT_IMPLEMENTED;
1104 : }
1105 :
1106 : /* [implicit_jscontext] attribute boolean strict; */
1107 : NS_IMETHODIMP nsXPCComponents_Utils::GetStrict(JSContext* cx, bool *aStrict)
1108 : {
1109 : return NS_ERROR_NOT_IMPLEMENTED;
1110 : }
1111 : NS_IMETHODIMP nsXPCComponents_Utils::SetStrict(JSContext* cx, bool aStrict)
1112 : {
1113 : return NS_ERROR_NOT_IMPLEMENTED;
1114 : }
1115 :
1116 : /* [implicit_jscontext] attribute boolean werror; */
1117 : NS_IMETHODIMP nsXPCComponents_Utils::GetWerror(JSContext* cx, bool *aWerror)
1118 : {
1119 : return NS_ERROR_NOT_IMPLEMENTED;
1120 : }
1121 : NS_IMETHODIMP nsXPCComponents_Utils::SetWerror(JSContext* cx, bool aWerror)
1122 : {
1123 : return NS_ERROR_NOT_IMPLEMENTED;
1124 : }
1125 :
1126 : /* [implicit_jscontext] attribute boolean atline; */
1127 : NS_IMETHODIMP nsXPCComponents_Utils::GetAtline(JSContext* cx, bool *aAtline)
1128 : {
1129 : return NS_ERROR_NOT_IMPLEMENTED;
1130 : }
1131 : NS_IMETHODIMP nsXPCComponents_Utils::SetAtline(JSContext* cx, bool aAtline)
1132 : {
1133 : return NS_ERROR_NOT_IMPLEMENTED;
1134 : }
1135 :
1136 : /* [implicit_jscontext] attribute boolean xml; */
1137 : NS_IMETHODIMP nsXPCComponents_Utils::GetXml(JSContext* cx, bool *aXml)
1138 : {
1139 : return NS_ERROR_NOT_IMPLEMENTED;
1140 : }
1141 : NS_IMETHODIMP nsXPCComponents_Utils::SetXml(JSContext* cx, bool aXml)
1142 : {
1143 : return NS_ERROR_NOT_IMPLEMENTED;
1144 : }
1145 :
1146 : /* [implicit_jscontext] attribute boolean relimit; */
1147 : NS_IMETHODIMP nsXPCComponents_Utils::GetRelimit(JSContext* cx, bool *aRelimit)
1148 : {
1149 : return NS_ERROR_NOT_IMPLEMENTED;
1150 : }
1151 : NS_IMETHODIMP nsXPCComponents_Utils::SetRelimit(JSContext* cx, bool aRelimit)
1152 : {
1153 : return NS_ERROR_NOT_IMPLEMENTED;
1154 : }
1155 :
1156 : /* [implicit_jscontext] attribute boolean methodjit; */
1157 : NS_IMETHODIMP nsXPCComponents_Utils::GetMethodjit(JSContext* cx, bool *aMethodjit)
1158 : {
1159 : return NS_ERROR_NOT_IMPLEMENTED;
1160 : }
1161 : NS_IMETHODIMP nsXPCComponents_Utils::SetMethodjit(JSContext* cx, bool aMethodjit)
1162 : {
1163 : return NS_ERROR_NOT_IMPLEMENTED;
1164 : }
1165 :
1166 : /* [implicit_jscontext] attribute boolean methodjit_always; */
1167 : NS_IMETHODIMP nsXPCComponents_Utils::GetMethodjit_always(JSContext* cx, bool *aMethodjit_always)
1168 : {
1169 : return NS_ERROR_NOT_IMPLEMENTED;
1170 : }
1171 : NS_IMETHODIMP nsXPCComponents_Utils::SetMethodjit_always(JSContext* cx, bool aMethodjit_always)
1172 : {
1173 : return NS_ERROR_NOT_IMPLEMENTED;
1174 : }
1175 :
1176 : /* [implicit_jscontext] void setGCZeal (in long zeal); */
1177 : NS_IMETHODIMP nsXPCComponents_Utils::SetGCZeal(PRInt32 zeal, JSContext* cx)
1178 : {
1179 : return NS_ERROR_NOT_IMPLEMENTED;
1180 : }
1181 :
1182 : /* End of implementation class template. */
1183 : #endif
1184 :
1185 :
1186 : /* starting interface: nsIXPCComponents */
1187 : #define NS_IXPCCOMPONENTS_IID_STR "4676e9cf-2c07-423b-b161-26bb9d8067d3"
1188 :
1189 : #define NS_IXPCCOMPONENTS_IID \
1190 : {0x4676e9cf, 0x2c07, 0x423b, \
1191 : { 0xb1, 0x61, 0x26, 0xbb, 0x9d, 0x80, 0x67, 0xd3 }}
1192 :
1193 15475 : class NS_NO_VTABLE NS_SCRIPTABLE nsIXPCComponents : public nsISupports {
1194 : public:
1195 :
1196 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXPCCOMPONENTS_IID)
1197 :
1198 : /* readonly attribute nsIXPCComponents_Interfaces interfaces; */
1199 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces * *aInterfaces) = 0;
1200 :
1201 : /* readonly attribute nsIXPCComponents_InterfacesByID interfacesByID; */
1202 : NS_SCRIPTABLE NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID * *aInterfacesByID) = 0;
1203 :
1204 : /* readonly attribute nsIXPCComponents_Classes classes; */
1205 : NS_SCRIPTABLE NS_IMETHOD GetClasses(nsIXPCComponents_Classes * *aClasses) = 0;
1206 :
1207 : /* readonly attribute nsIXPCComponents_ClassesByID classesByID; */
1208 : NS_SCRIPTABLE NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID * *aClassesByID) = 0;
1209 :
1210 : /* readonly attribute nsIStackFrame stack; */
1211 : NS_SCRIPTABLE NS_IMETHOD GetStack(nsIStackFrame * *aStack) = 0;
1212 :
1213 : /* readonly attribute nsIXPCComponents_Results results; */
1214 : NS_SCRIPTABLE NS_IMETHOD GetResults(nsIXPCComponents_Results * *aResults) = 0;
1215 :
1216 : /* readonly attribute nsIComponentManager manager; */
1217 : NS_SCRIPTABLE NS_IMETHOD GetManager(nsIComponentManager * *aManager) = 0;
1218 :
1219 : /* readonly attribute nsIXPCComponents_Utils utils; */
1220 : NS_SCRIPTABLE NS_IMETHOD GetUtils(nsIXPCComponents_Utils * *aUtils) = 0;
1221 :
1222 : /* readonly attribute nsIXPCComponents_ID ID; */
1223 : NS_SCRIPTABLE NS_IMETHOD GetID(nsIXPCComponents_ID * *aID) = 0;
1224 :
1225 : /* readonly attribute nsIXPCComponents_Exception Exception; */
1226 : NS_SCRIPTABLE NS_IMETHOD GetException(nsIXPCComponents_Exception * *aException) = 0;
1227 :
1228 : /* readonly attribute nsIXPCComponents_Constructor Constructor; */
1229 : NS_SCRIPTABLE NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor * *aConstructor) = 0;
1230 :
1231 : /* boolean isSuccessCode (in nsresult result); */
1232 : NS_SCRIPTABLE NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval NS_OUTPARAM) = 0;
1233 :
1234 : /* [deprecated,implicit_jscontext] jsval lookupMethod (in jsval obj, in jsval name); */
1235 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM) = 0;
1236 :
1237 : /* [deprecated,implicit_jscontext] void reportError (in jsval error); */
1238 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx) = 0;
1239 :
1240 : };
1241 :
1242 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPCComponents, NS_IXPCCOMPONENTS_IID)
1243 :
1244 : /* Use this macro when declaring classes that implement this interface. */
1245 : #define NS_DECL_NSIXPCCOMPONENTS \
1246 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces * *aInterfaces); \
1247 : NS_SCRIPTABLE NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID * *aInterfacesByID); \
1248 : NS_SCRIPTABLE NS_IMETHOD GetClasses(nsIXPCComponents_Classes * *aClasses); \
1249 : NS_SCRIPTABLE NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID * *aClassesByID); \
1250 : NS_SCRIPTABLE NS_IMETHOD GetStack(nsIStackFrame * *aStack); \
1251 : NS_SCRIPTABLE NS_IMETHOD GetResults(nsIXPCComponents_Results * *aResults); \
1252 : NS_SCRIPTABLE NS_IMETHOD GetManager(nsIComponentManager * *aManager); \
1253 : NS_SCRIPTABLE NS_IMETHOD GetUtils(nsIXPCComponents_Utils * *aUtils); \
1254 : NS_SCRIPTABLE NS_IMETHOD GetID(nsIXPCComponents_ID * *aID); \
1255 : NS_SCRIPTABLE NS_IMETHOD GetException(nsIXPCComponents_Exception * *aException); \
1256 : NS_SCRIPTABLE NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor * *aConstructor); \
1257 : NS_SCRIPTABLE NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval NS_OUTPARAM); \
1258 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM); \
1259 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx);
1260 :
1261 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
1262 : #define NS_FORWARD_NSIXPCCOMPONENTS(_to) \
1263 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces * *aInterfaces) { return _to GetInterfaces(aInterfaces); } \
1264 : NS_SCRIPTABLE NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID * *aInterfacesByID) { return _to GetInterfacesByID(aInterfacesByID); } \
1265 : NS_SCRIPTABLE NS_IMETHOD GetClasses(nsIXPCComponents_Classes * *aClasses) { return _to GetClasses(aClasses); } \
1266 : NS_SCRIPTABLE NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID * *aClassesByID) { return _to GetClassesByID(aClassesByID); } \
1267 : NS_SCRIPTABLE NS_IMETHOD GetStack(nsIStackFrame * *aStack) { return _to GetStack(aStack); } \
1268 : NS_SCRIPTABLE NS_IMETHOD GetResults(nsIXPCComponents_Results * *aResults) { return _to GetResults(aResults); } \
1269 : NS_SCRIPTABLE NS_IMETHOD GetManager(nsIComponentManager * *aManager) { return _to GetManager(aManager); } \
1270 : NS_SCRIPTABLE NS_IMETHOD GetUtils(nsIXPCComponents_Utils * *aUtils) { return _to GetUtils(aUtils); } \
1271 : NS_SCRIPTABLE NS_IMETHOD GetID(nsIXPCComponents_ID * *aID) { return _to GetID(aID); } \
1272 : NS_SCRIPTABLE NS_IMETHOD GetException(nsIXPCComponents_Exception * *aException) { return _to GetException(aException); } \
1273 : NS_SCRIPTABLE NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor * *aConstructor) { return _to GetConstructor(aConstructor); } \
1274 : NS_SCRIPTABLE NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval NS_OUTPARAM) { return _to IsSuccessCode(result, _retval); } \
1275 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return _to LookupMethod(obj, name, cx, _retval); } \
1276 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx) { return _to ReportError(error, cx); }
1277 :
1278 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
1279 : #define NS_FORWARD_SAFE_NSIXPCCOMPONENTS(_to) \
1280 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(nsIXPCComponents_Interfaces * *aInterfaces) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaces(aInterfaces); } \
1281 : NS_SCRIPTABLE NS_IMETHOD GetInterfacesByID(nsIXPCComponents_InterfacesByID * *aInterfacesByID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfacesByID(aInterfacesByID); } \
1282 : NS_SCRIPTABLE NS_IMETHOD GetClasses(nsIXPCComponents_Classes * *aClasses) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClasses(aClasses); } \
1283 : NS_SCRIPTABLE NS_IMETHOD GetClassesByID(nsIXPCComponents_ClassesByID * *aClassesByID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassesByID(aClassesByID); } \
1284 : NS_SCRIPTABLE NS_IMETHOD GetStack(nsIStackFrame * *aStack) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStack(aStack); } \
1285 : NS_SCRIPTABLE NS_IMETHOD GetResults(nsIXPCComponents_Results * *aResults) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetResults(aResults); } \
1286 : NS_SCRIPTABLE NS_IMETHOD GetManager(nsIComponentManager * *aManager) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetManager(aManager); } \
1287 : NS_SCRIPTABLE NS_IMETHOD GetUtils(nsIXPCComponents_Utils * *aUtils) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUtils(aUtils); } \
1288 : NS_SCRIPTABLE NS_IMETHOD GetID(nsIXPCComponents_ID * *aID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetID(aID); } \
1289 : NS_SCRIPTABLE NS_IMETHOD GetException(nsIXPCComponents_Exception * *aException) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetException(aException); } \
1290 : NS_SCRIPTABLE NS_IMETHOD GetConstructor(nsIXPCComponents_Constructor * *aConstructor) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetConstructor(aConstructor); } \
1291 : NS_SCRIPTABLE NS_IMETHOD IsSuccessCode(nsresult result, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsSuccessCode(result, _retval); } \
1292 : NS_SCRIPTABLE NS_IMETHOD LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->LookupMethod(obj, name, cx, _retval); } \
1293 : NS_SCRIPTABLE NS_IMETHOD ReportError(const JS::Value & error, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->ReportError(error, cx); }
1294 :
1295 : #if 0
1296 : /* Use the code below as a template for the implementation class for this interface. */
1297 :
1298 : /* Header file */
1299 : class nsXPCComponents : public nsIXPCComponents
1300 : {
1301 : public:
1302 : NS_DECL_ISUPPORTS
1303 : NS_DECL_NSIXPCCOMPONENTS
1304 :
1305 : nsXPCComponents();
1306 :
1307 : private:
1308 : ~nsXPCComponents();
1309 :
1310 : protected:
1311 : /* additional members */
1312 : };
1313 :
1314 : /* Implementation file */
1315 : NS_IMPL_ISUPPORTS1(nsXPCComponents, nsIXPCComponents)
1316 :
1317 : nsXPCComponents::nsXPCComponents()
1318 : {
1319 : /* member initializers and constructor code */
1320 : }
1321 :
1322 : nsXPCComponents::~nsXPCComponents()
1323 : {
1324 : /* destructor code */
1325 : }
1326 :
1327 : /* readonly attribute nsIXPCComponents_Interfaces interfaces; */
1328 : NS_IMETHODIMP nsXPCComponents::GetInterfaces(nsIXPCComponents_Interfaces * *aInterfaces)
1329 : {
1330 : return NS_ERROR_NOT_IMPLEMENTED;
1331 : }
1332 :
1333 : /* readonly attribute nsIXPCComponents_InterfacesByID interfacesByID; */
1334 : NS_IMETHODIMP nsXPCComponents::GetInterfacesByID(nsIXPCComponents_InterfacesByID * *aInterfacesByID)
1335 : {
1336 : return NS_ERROR_NOT_IMPLEMENTED;
1337 : }
1338 :
1339 : /* readonly attribute nsIXPCComponents_Classes classes; */
1340 : NS_IMETHODIMP nsXPCComponents::GetClasses(nsIXPCComponents_Classes * *aClasses)
1341 : {
1342 : return NS_ERROR_NOT_IMPLEMENTED;
1343 : }
1344 :
1345 : /* readonly attribute nsIXPCComponents_ClassesByID classesByID; */
1346 : NS_IMETHODIMP nsXPCComponents::GetClassesByID(nsIXPCComponents_ClassesByID * *aClassesByID)
1347 : {
1348 : return NS_ERROR_NOT_IMPLEMENTED;
1349 : }
1350 :
1351 : /* readonly attribute nsIStackFrame stack; */
1352 : NS_IMETHODIMP nsXPCComponents::GetStack(nsIStackFrame * *aStack)
1353 : {
1354 : return NS_ERROR_NOT_IMPLEMENTED;
1355 : }
1356 :
1357 : /* readonly attribute nsIXPCComponents_Results results; */
1358 : NS_IMETHODIMP nsXPCComponents::GetResults(nsIXPCComponents_Results * *aResults)
1359 : {
1360 : return NS_ERROR_NOT_IMPLEMENTED;
1361 : }
1362 :
1363 : /* readonly attribute nsIComponentManager manager; */
1364 : NS_IMETHODIMP nsXPCComponents::GetManager(nsIComponentManager * *aManager)
1365 : {
1366 : return NS_ERROR_NOT_IMPLEMENTED;
1367 : }
1368 :
1369 : /* readonly attribute nsIXPCComponents_Utils utils; */
1370 : NS_IMETHODIMP nsXPCComponents::GetUtils(nsIXPCComponents_Utils * *aUtils)
1371 : {
1372 : return NS_ERROR_NOT_IMPLEMENTED;
1373 : }
1374 :
1375 : /* readonly attribute nsIXPCComponents_ID ID; */
1376 : NS_IMETHODIMP nsXPCComponents::GetID(nsIXPCComponents_ID * *aID)
1377 : {
1378 : return NS_ERROR_NOT_IMPLEMENTED;
1379 : }
1380 :
1381 : /* readonly attribute nsIXPCComponents_Exception Exception; */
1382 : NS_IMETHODIMP nsXPCComponents::GetException(nsIXPCComponents_Exception * *aException)
1383 : {
1384 : return NS_ERROR_NOT_IMPLEMENTED;
1385 : }
1386 :
1387 : /* readonly attribute nsIXPCComponents_Constructor Constructor; */
1388 : NS_IMETHODIMP nsXPCComponents::GetConstructor(nsIXPCComponents_Constructor * *aConstructor)
1389 : {
1390 : return NS_ERROR_NOT_IMPLEMENTED;
1391 : }
1392 :
1393 : /* boolean isSuccessCode (in nsresult result); */
1394 : NS_IMETHODIMP nsXPCComponents::IsSuccessCode(nsresult result, bool *_retval NS_OUTPARAM)
1395 : {
1396 : return NS_ERROR_NOT_IMPLEMENTED;
1397 : }
1398 :
1399 : /* [deprecated,implicit_jscontext] jsval lookupMethod (in jsval obj, in jsval name); */
1400 : NS_IMETHODIMP nsXPCComponents::LookupMethod(const JS::Value & obj, const JS::Value & name, JSContext* cx, JS::Value *_retval NS_OUTPARAM)
1401 : {
1402 : return NS_ERROR_NOT_IMPLEMENTED;
1403 : }
1404 :
1405 : /* [deprecated,implicit_jscontext] void reportError (in jsval error); */
1406 : NS_IMETHODIMP nsXPCComponents::ReportError(const JS::Value & error, JSContext* cx)
1407 : {
1408 : return NS_ERROR_NOT_IMPLEMENTED;
1409 : }
1410 :
1411 : /* End of implementation class template. */
1412 : #endif
1413 :
1414 :
1415 : #endif /* __gen_xpccomponents_h__ */
|