|
1 /* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
|
2 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
3 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
5 |
|
6 /** |
|
7 * The mother of all xpcom interfaces. |
|
8 */ |
|
9 |
|
10 /* In order to get both the right typelib and the right header we force |
|
11 * the 'real' output from xpidl to be commented out in the generated header |
|
12 * and includes a copy of the original nsISupports.h. This is all just to deal |
|
13 * with the Mac specific ": public __comobject" thing. |
|
14 */ |
|
15 |
|
16 #include "nsrootidl.idl" |
|
17 |
|
18 %{C++ |
|
19 /* |
|
20 * Start commenting out the C++ versions of the below in the output header |
|
21 */ |
|
22 #if 0 |
|
23 %} |
|
24 |
|
25 [scriptable, uuid(00000000-0000-0000-c000-000000000046)] |
|
26 interface nsISupports { |
|
27 void QueryInterface(in nsIIDRef uuid, |
|
28 [iid_is(uuid),retval] out nsQIResult result); |
|
29 [noscript, notxpcom] nsrefcnt AddRef(); |
|
30 [noscript, notxpcom] nsrefcnt Release(); |
|
31 }; |
|
32 |
|
33 %{C++ |
|
34 /* |
|
35 * End commenting out the C++ versions of the above in the output header |
|
36 */ |
|
37 #endif |
|
38 %} |
|
39 |
|
40 |
|
41 %{C++ |
|
42 #include "nsISupportsBase.h" |
|
43 #include "nsISupportsUtils.h" |
|
44 %} |