1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/xpcom/base/nsIWeakReference.idl
3 : */
4 :
5 : #ifndef __gen_nsIWeakReference_h__
6 : #define __gen_nsIWeakReference_h__
7 :
8 :
9 : #ifndef __gen_nsISupports_h__
10 : #include "nsISupports.h"
11 : #endif
12 :
13 : /* For IDL files that don't want to include root IDL files. */
14 : #ifndef NS_NO_VTABLE
15 : #define NS_NO_VTABLE
16 : #endif
17 :
18 : /* starting interface: nsIWeakReference */
19 : #define NS_IWEAKREFERENCE_IID_STR "9188bc85-f92e-11d2-81ef-0060083a0bcf"
20 :
21 : #define NS_IWEAKREFERENCE_IID \
22 : {0x9188bc85, 0xf92e, 0x11d2, \
23 : { 0x81, 0xef, 0x00, 0x60, 0x08, 0x3a, 0x0b, 0xcf }}
24 :
25 37868 : class NS_NO_VTABLE NS_SCRIPTABLE nsIWeakReference : public nsISupports {
26 : public:
27 :
28 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IWEAKREFERENCE_IID)
29 :
30 : /* void QueryReferent (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result); */
31 : NS_SCRIPTABLE NS_IMETHOD QueryReferent(const nsIID & uuid, void **result NS_OUTPARAM) = 0;
32 :
33 : };
34 :
35 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIWeakReference, NS_IWEAKREFERENCE_IID)
36 :
37 : /* Use this macro when declaring classes that implement this interface. */
38 : #define NS_DECL_NSIWEAKREFERENCE \
39 : NS_SCRIPTABLE NS_IMETHOD QueryReferent(const nsIID & uuid, void **result NS_OUTPARAM);
40 :
41 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
42 : #define NS_FORWARD_NSIWEAKREFERENCE(_to) \
43 : NS_SCRIPTABLE NS_IMETHOD QueryReferent(const nsIID & uuid, void **result NS_OUTPARAM) { return _to QueryReferent(uuid, result); }
44 :
45 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
46 : #define NS_FORWARD_SAFE_NSIWEAKREFERENCE(_to) \
47 : NS_SCRIPTABLE NS_IMETHOD QueryReferent(const nsIID & uuid, void **result NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->QueryReferent(uuid, result); }
48 :
49 : #if 0
50 : /* Use the code below as a template for the implementation class for this interface. */
51 :
52 : /* Header file */
53 : class nsWeakReference : public nsIWeakReference
54 : {
55 : public:
56 : NS_DECL_ISUPPORTS
57 : NS_DECL_NSIWEAKREFERENCE
58 :
59 : nsWeakReference();
60 :
61 : private:
62 : ~nsWeakReference();
63 :
64 : protected:
65 : /* additional members */
66 : };
67 :
68 : /* Implementation file */
69 : NS_IMPL_ISUPPORTS1(nsWeakReference, nsIWeakReference)
70 :
71 : nsWeakReference::nsWeakReference()
72 : {
73 : /* member initializers and constructor code */
74 : }
75 :
76 : nsWeakReference::~nsWeakReference()
77 : {
78 : /* destructor code */
79 : }
80 :
81 : /* void QueryReferent (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result); */
82 : NS_IMETHODIMP nsWeakReference::QueryReferent(const nsIID & uuid, void **result NS_OUTPARAM)
83 : {
84 : return NS_ERROR_NOT_IMPLEMENTED;
85 : }
86 :
87 : /* End of implementation class template. */
88 : #endif
89 :
90 :
91 : /* starting interface: nsISupportsWeakReference */
92 : #define NS_ISUPPORTSWEAKREFERENCE_IID_STR "9188bc86-f92e-11d2-81ef-0060083a0bcf"
93 :
94 : #define NS_ISUPPORTSWEAKREFERENCE_IID \
95 : {0x9188bc86, 0xf92e, 0x11d2, \
96 : { 0x81, 0xef, 0x00, 0x60, 0x08, 0x3a, 0x0b, 0xcf }}
97 :
98 154916 : class NS_NO_VTABLE NS_SCRIPTABLE nsISupportsWeakReference : public nsISupports {
99 : public:
100 :
101 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSWEAKREFERENCE_IID)
102 :
103 : /* nsIWeakReference GetWeakReference (); */
104 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(nsIWeakReference * *_retval NS_OUTPARAM) = 0;
105 :
106 : };
107 :
108 : NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsWeakReference, NS_ISUPPORTSWEAKREFERENCE_IID)
109 :
110 : /* Use this macro when declaring classes that implement this interface. */
111 : #define NS_DECL_NSISUPPORTSWEAKREFERENCE \
112 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(nsIWeakReference * *_retval NS_OUTPARAM);
113 :
114 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
115 : #define NS_FORWARD_NSISUPPORTSWEAKREFERENCE(_to) \
116 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(nsIWeakReference * *_retval NS_OUTPARAM) { return _to GetWeakReference(_retval); }
117 :
118 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
119 : #define NS_FORWARD_SAFE_NSISUPPORTSWEAKREFERENCE(_to) \
120 : NS_SCRIPTABLE NS_IMETHOD GetWeakReference(nsIWeakReference * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWeakReference(_retval); }
121 :
122 : #if 0
123 : /* Use the code below as a template for the implementation class for this interface. */
124 :
125 : /* Header file */
126 : class nsSupportsWeakReference : public nsISupportsWeakReference
127 : {
128 : public:
129 : NS_DECL_ISUPPORTS
130 : NS_DECL_NSISUPPORTSWEAKREFERENCE
131 :
132 : nsSupportsWeakReference();
133 :
134 : private:
135 : ~nsSupportsWeakReference();
136 :
137 : protected:
138 : /* additional members */
139 : };
140 :
141 : /* Implementation file */
142 : NS_IMPL_ISUPPORTS1(nsSupportsWeakReference, nsISupportsWeakReference)
143 :
144 : nsSupportsWeakReference::nsSupportsWeakReference()
145 : {
146 : /* member initializers and constructor code */
147 : }
148 :
149 : nsSupportsWeakReference::~nsSupportsWeakReference()
150 : {
151 : /* destructor code */
152 : }
153 :
154 : /* nsIWeakReference GetWeakReference (); */
155 : NS_IMETHODIMP nsSupportsWeakReference::GetWeakReference(nsIWeakReference * *_retval NS_OUTPARAM)
156 : {
157 : return NS_ERROR_NOT_IMPLEMENTED;
158 : }
159 :
160 : /* End of implementation class template. */
161 : #endif
162 :
163 : #ifdef MOZILLA_INTERNAL_API
164 : #include "nsIWeakReferenceUtils.h"
165 : #endif
166 :
167 : #endif /* __gen_nsIWeakReference_h__ */
|