Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/dist/include/nsISupportsPrimitives.h
Line
Count
Source (jump to first uncovered line)
1
/*
2
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM /src/mozilla-central/xpcom/ds/nsISupportsPrimitives.idl
3
 */
4
5
#ifndef __gen_nsISupportsPrimitives_h__
6
#define __gen_nsISupportsPrimitives_h__
7
8
9
#ifndef __gen_nsISupports_h__
10
#include "nsISupports.h"
11
#endif
12
13
#include "js/GCAnnotations.h"
14
15
/* For IDL files that don't want to include root IDL files. */
16
#ifndef NS_NO_VTABLE
17
#define NS_NO_VTABLE
18
#endif
19
20
/* starting interface:    nsISupportsPrimitive */
21
#define NS_ISUPPORTSPRIMITIVE_IID_STR "d0d4b136-1dd1-11b2-9371-f0727ef827c0"
22
23
#define NS_ISUPPORTSPRIMITIVE_IID \
24
  {0xd0d4b136, 0x1dd1, 0x11b2, \
25
    { 0x93, 0x71, 0xf0, 0x72, 0x7e, 0xf8, 0x27, 0xc0 }}
26
27
class NS_NO_VTABLE nsISupportsPrimitive : public nsISupports {
28
 public:
29
30
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRIMITIVE_IID)
31
32
  enum {
33
    TYPE_ID = 1U,
34
    TYPE_CSTRING = 2U,
35
    TYPE_STRING = 3U,
36
    TYPE_PRBOOL = 4U,
37
    TYPE_PRUINT8 = 5U,
38
    TYPE_PRUINT16 = 6U,
39
    TYPE_PRUINT32 = 7U,
40
    TYPE_PRUINT64 = 8U,
41
    TYPE_PRTIME = 9U,
42
    TYPE_CHAR = 10U,
43
    TYPE_PRINT16 = 11U,
44
    TYPE_PRINT32 = 12U,
45
    TYPE_PRINT64 = 13U,
46
    TYPE_FLOAT = 14U,
47
    TYPE_DOUBLE = 15U,
48
    TYPE_INTERFACE_POINTER = 17U
49
  };
50
51
  /* readonly attribute unsigned short type; */
52
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetType(uint16_t *aType) = 0;
53
54
};
55
56
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPrimitive, NS_ISUPPORTSPRIMITIVE_IID)
57
58
/* Use this macro when declaring classes that implement this interface. */
59
#define NS_DECL_NSISUPPORTSPRIMITIVE \
60
  NS_IMETHOD GetType(uint16_t *aType) override; 
61
62
/* Use this macro when declaring the members of this interface when the
63
   class doesn't implement the interface. This is useful for forwarding. */
64
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRIMITIVE \
65
  nsresult GetType(uint16_t *aType); 
66
67
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
68
#define NS_FORWARD_NSISUPPORTSPRIMITIVE(_to) \
69
0
  NS_IMETHOD GetType(uint16_t *aType) override { return _to GetType(aType); } 
70
71
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
72
#define NS_FORWARD_SAFE_NSISUPPORTSPRIMITIVE(_to) \
73
  NS_IMETHOD GetType(uint16_t *aType) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetType(aType); } 
74
75
76
/* starting interface:    nsISupportsID */
77
#define NS_ISUPPORTSID_IID_STR "d18290a0-4a1c-11d3-9890-006008962422"
78
79
#define NS_ISUPPORTSID_IID \
80
  {0xd18290a0, 0x4a1c, 0x11d3, \
81
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
82
83
class NS_NO_VTABLE nsISupportsID : public nsISupportsPrimitive {
84
 public:
85
86
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSID_IID)
87
88
  /* attribute nsIDPtr data; */
89
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(nsID * * aData) = 0;
90
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(const nsID * aData) = 0;
91
92
  /* string toString (); */
93
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
94
95
};
96
97
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsID, NS_ISUPPORTSID_IID)
98
99
/* Use this macro when declaring classes that implement this interface. */
100
#define NS_DECL_NSISUPPORTSID \
101
  NS_IMETHOD GetData(nsID * * aData) override; \
102
  NS_IMETHOD SetData(const nsID * aData) override; \
103
  NS_IMETHOD ToString(char * *_retval) override; 
104
105
/* Use this macro when declaring the members of this interface when the
106
   class doesn't implement the interface. This is useful for forwarding. */
107
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSID \
108
  nsresult GetData(nsID * * aData); \
109
  nsresult SetData(const nsID * aData); \
110
  nsresult ToString(char * *_retval); 
111
112
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
113
#define NS_FORWARD_NSISUPPORTSID(_to) \
114
  NS_IMETHOD GetData(nsID * * aData) override { return _to GetData(aData); } \
115
  NS_IMETHOD SetData(const nsID * aData) override { return _to SetData(aData); } \
116
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_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_NSISUPPORTSID(_to) \
120
  NS_IMETHOD GetData(nsID * * aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
121
  NS_IMETHOD SetData(const nsID * aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
122
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
123
124
125
/* starting interface:    nsISupportsCString */
126
#define NS_ISUPPORTSCSTRING_IID_STR "d65ff270-4a1c-11d3-9890-006008962422"
127
128
#define NS_ISUPPORTSCSTRING_IID \
129
  {0xd65ff270, 0x4a1c, 0x11d3, \
130
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
131
132
class NS_NO_VTABLE nsISupportsCString : public nsISupportsPrimitive {
133
 public:
134
135
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSCSTRING_IID)
136
137
  /* attribute ACString data; */
138
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(nsACString& aData) = 0;
139
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(const nsACString& aData) = 0;
140
141
  /* string toString (); */
142
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
143
144
};
145
146
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsCString, NS_ISUPPORTSCSTRING_IID)
147
148
/* Use this macro when declaring classes that implement this interface. */
149
#define NS_DECL_NSISUPPORTSCSTRING \
150
  NS_IMETHOD GetData(nsACString& aData) override; \
151
  NS_IMETHOD SetData(const nsACString& aData) override; \
152
  NS_IMETHOD ToString(char * *_retval) override; 
153
154
/* Use this macro when declaring the members of this interface when the
155
   class doesn't implement the interface. This is useful for forwarding. */
156
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSCSTRING \
157
  nsresult GetData(nsACString& aData); \
158
  nsresult SetData(const nsACString& aData); \
159
  nsresult ToString(char * *_retval); 
160
161
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
162
#define NS_FORWARD_NSISUPPORTSCSTRING(_to) \
163
  NS_IMETHOD GetData(nsACString& aData) override { return _to GetData(aData); } \
164
  NS_IMETHOD SetData(const nsACString& aData) override { return _to SetData(aData); } \
165
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
166
167
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
168
#define NS_FORWARD_SAFE_NSISUPPORTSCSTRING(_to) \
169
  NS_IMETHOD GetData(nsACString& aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
170
  NS_IMETHOD SetData(const nsACString& aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
171
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
172
173
174
/* starting interface:    nsISupportsString */
175
#define NS_ISUPPORTSSTRING_IID_STR "d79dc970-4a1c-11d3-9890-006008962422"
176
177
#define NS_ISUPPORTSSTRING_IID \
178
  {0xd79dc970, 0x4a1c, 0x11d3, \
179
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
180
181
class NS_NO_VTABLE nsISupportsString : public nsISupportsPrimitive {
182
 public:
183
184
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSSTRING_IID)
185
186
  /* attribute AString data; */
187
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(nsAString& aData) = 0;
188
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(const nsAString& aData) = 0;
189
190
  /* wstring toString (); */
191
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char16_t * *_retval) = 0;
192
193
};
194
195
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsString, NS_ISUPPORTSSTRING_IID)
196
197
/* Use this macro when declaring classes that implement this interface. */
198
#define NS_DECL_NSISUPPORTSSTRING \
199
  NS_IMETHOD GetData(nsAString& aData) override; \
200
  NS_IMETHOD SetData(const nsAString& aData) override; \
201
  NS_IMETHOD ToString(char16_t * *_retval) override; 
202
203
/* Use this macro when declaring the members of this interface when the
204
   class doesn't implement the interface. This is useful for forwarding. */
205
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSSTRING \
206
  nsresult GetData(nsAString& aData); \
207
  nsresult SetData(const nsAString& aData); \
208
  nsresult ToString(char16_t * *_retval); 
209
210
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
211
#define NS_FORWARD_NSISUPPORTSSTRING(_to) \
212
0
  NS_IMETHOD GetData(nsAString& aData) override { return _to GetData(aData); } \
213
0
  NS_IMETHOD SetData(const nsAString& aData) override { return _to SetData(aData); } \
214
0
  NS_IMETHOD ToString(char16_t * *_retval) override { return _to ToString(_retval); } 
215
216
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
217
#define NS_FORWARD_SAFE_NSISUPPORTSSTRING(_to) \
218
  NS_IMETHOD GetData(nsAString& aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
219
  NS_IMETHOD SetData(const nsAString& aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
220
  NS_IMETHOD ToString(char16_t * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
221
222
223
/* starting interface:    nsISupportsPRBool */
224
#define NS_ISUPPORTSPRBOOL_IID_STR "ddc3b490-4a1c-11d3-9890-006008962422"
225
226
#define NS_ISUPPORTSPRBOOL_IID \
227
  {0xddc3b490, 0x4a1c, 0x11d3, \
228
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
229
230
class NS_NO_VTABLE nsISupportsPRBool : public nsISupportsPrimitive {
231
 public:
232
233
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRBOOL_IID)
234
235
  /* attribute boolean data; */
236
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(bool *aData) = 0;
237
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(bool aData) = 0;
238
239
  /* string toString (); */
240
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
241
242
};
243
244
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRBool, NS_ISUPPORTSPRBOOL_IID)
245
246
/* Use this macro when declaring classes that implement this interface. */
247
#define NS_DECL_NSISUPPORTSPRBOOL \
248
  NS_IMETHOD GetData(bool *aData) override; \
249
  NS_IMETHOD SetData(bool aData) override; \
250
  NS_IMETHOD ToString(char * *_retval) override; 
251
252
/* Use this macro when declaring the members of this interface when the
253
   class doesn't implement the interface. This is useful for forwarding. */
254
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRBOOL \
255
  nsresult GetData(bool *aData); \
256
  nsresult SetData(bool aData); \
257
  nsresult ToString(char * *_retval); 
258
259
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
260
#define NS_FORWARD_NSISUPPORTSPRBOOL(_to) \
261
  NS_IMETHOD GetData(bool *aData) override { return _to GetData(aData); } \
262
  NS_IMETHOD SetData(bool aData) override { return _to SetData(aData); } \
263
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
264
265
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
266
#define NS_FORWARD_SAFE_NSISUPPORTSPRBOOL(_to) \
267
  NS_IMETHOD GetData(bool *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
268
  NS_IMETHOD SetData(bool aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
269
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
270
271
272
/* starting interface:    nsISupportsPRUint8 */
273
#define NS_ISUPPORTSPRUINT8_IID_STR "dec2e4e0-4a1c-11d3-9890-006008962422"
274
275
#define NS_ISUPPORTSPRUINT8_IID \
276
  {0xdec2e4e0, 0x4a1c, 0x11d3, \
277
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
278
279
class NS_NO_VTABLE nsISupportsPRUint8 : public nsISupportsPrimitive {
280
 public:
281
282
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT8_IID)
283
284
  /* attribute uint8_t data; */
285
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(uint8_t *aData) = 0;
286
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(uint8_t aData) = 0;
287
288
  /* string toString (); */
289
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
290
291
};
292
293
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRUint8, NS_ISUPPORTSPRUINT8_IID)
294
295
/* Use this macro when declaring classes that implement this interface. */
296
#define NS_DECL_NSISUPPORTSPRUINT8 \
297
  NS_IMETHOD GetData(uint8_t *aData) override; \
298
  NS_IMETHOD SetData(uint8_t aData) override; \
299
  NS_IMETHOD ToString(char * *_retval) override; 
300
301
/* Use this macro when declaring the members of this interface when the
302
   class doesn't implement the interface. This is useful for forwarding. */
303
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRUINT8 \
304
  nsresult GetData(uint8_t *aData); \
305
  nsresult SetData(uint8_t aData); \
306
  nsresult ToString(char * *_retval); 
307
308
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
309
#define NS_FORWARD_NSISUPPORTSPRUINT8(_to) \
310
  NS_IMETHOD GetData(uint8_t *aData) override { return _to GetData(aData); } \
311
  NS_IMETHOD SetData(uint8_t aData) override { return _to SetData(aData); } \
312
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
313
314
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
315
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT8(_to) \
316
  NS_IMETHOD GetData(uint8_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
317
  NS_IMETHOD SetData(uint8_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
318
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
319
320
321
/* starting interface:    nsISupportsPRUint16 */
322
#define NS_ISUPPORTSPRUINT16_IID_STR "dfacb090-4a1c-11d3-9890-006008962422"
323
324
#define NS_ISUPPORTSPRUINT16_IID \
325
  {0xdfacb090, 0x4a1c, 0x11d3, \
326
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
327
328
class NS_NO_VTABLE nsISupportsPRUint16 : public nsISupportsPrimitive {
329
 public:
330
331
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT16_IID)
332
333
  /* attribute uint16_t data; */
334
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(uint16_t *aData) = 0;
335
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(uint16_t aData) = 0;
336
337
  /* string toString (); */
338
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
339
340
};
341
342
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRUint16, NS_ISUPPORTSPRUINT16_IID)
343
344
/* Use this macro when declaring classes that implement this interface. */
345
#define NS_DECL_NSISUPPORTSPRUINT16 \
346
  NS_IMETHOD GetData(uint16_t *aData) override; \
347
  NS_IMETHOD SetData(uint16_t aData) override; \
348
  NS_IMETHOD ToString(char * *_retval) override; 
349
350
/* Use this macro when declaring the members of this interface when the
351
   class doesn't implement the interface. This is useful for forwarding. */
352
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRUINT16 \
353
  nsresult GetData(uint16_t *aData); \
354
  nsresult SetData(uint16_t aData); \
355
  nsresult ToString(char * *_retval); 
356
357
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
358
#define NS_FORWARD_NSISUPPORTSPRUINT16(_to) \
359
  NS_IMETHOD GetData(uint16_t *aData) override { return _to GetData(aData); } \
360
  NS_IMETHOD SetData(uint16_t aData) override { return _to SetData(aData); } \
361
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
362
363
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
364
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT16(_to) \
365
  NS_IMETHOD GetData(uint16_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
366
  NS_IMETHOD SetData(uint16_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
367
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
368
369
370
/* starting interface:    nsISupportsPRUint32 */
371
#define NS_ISUPPORTSPRUINT32_IID_STR "e01dc470-4a1c-11d3-9890-006008962422"
372
373
#define NS_ISUPPORTSPRUINT32_IID \
374
  {0xe01dc470, 0x4a1c, 0x11d3, \
375
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
376
377
class NS_NO_VTABLE nsISupportsPRUint32 : public nsISupportsPrimitive {
378
 public:
379
380
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT32_IID)
381
382
  /* attribute uint32_t data; */
383
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(uint32_t *aData) = 0;
384
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(uint32_t aData) = 0;
385
386
  /* string toString (); */
387
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
388
389
};
390
391
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRUint32, NS_ISUPPORTSPRUINT32_IID)
392
393
/* Use this macro when declaring classes that implement this interface. */
394
#define NS_DECL_NSISUPPORTSPRUINT32 \
395
  NS_IMETHOD GetData(uint32_t *aData) override; \
396
  NS_IMETHOD SetData(uint32_t aData) override; \
397
  NS_IMETHOD ToString(char * *_retval) override; 
398
399
/* Use this macro when declaring the members of this interface when the
400
   class doesn't implement the interface. This is useful for forwarding. */
401
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRUINT32 \
402
  nsresult GetData(uint32_t *aData); \
403
  nsresult SetData(uint32_t aData); \
404
  nsresult ToString(char * *_retval); 
405
406
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
407
#define NS_FORWARD_NSISUPPORTSPRUINT32(_to) \
408
  NS_IMETHOD GetData(uint32_t *aData) override { return _to GetData(aData); } \
409
  NS_IMETHOD SetData(uint32_t aData) override { return _to SetData(aData); } \
410
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
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_NSISUPPORTSPRUINT32(_to) \
414
  NS_IMETHOD GetData(uint32_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
415
  NS_IMETHOD SetData(uint32_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
416
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
417
418
419
/* starting interface:    nsISupportsPRUint64 */
420
#define NS_ISUPPORTSPRUINT64_IID_STR "e13567c0-4a1c-11d3-9890-006008962422"
421
422
#define NS_ISUPPORTSPRUINT64_IID \
423
  {0xe13567c0, 0x4a1c, 0x11d3, \
424
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
425
426
class NS_NO_VTABLE nsISupportsPRUint64 : public nsISupportsPrimitive {
427
 public:
428
429
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRUINT64_IID)
430
431
  /* attribute uint64_t data; */
432
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(uint64_t *aData) = 0;
433
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(uint64_t aData) = 0;
434
435
  /* string toString (); */
436
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
437
438
};
439
440
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRUint64, NS_ISUPPORTSPRUINT64_IID)
441
442
/* Use this macro when declaring classes that implement this interface. */
443
#define NS_DECL_NSISUPPORTSPRUINT64 \
444
  NS_IMETHOD GetData(uint64_t *aData) override; \
445
  NS_IMETHOD SetData(uint64_t aData) override; \
446
  NS_IMETHOD ToString(char * *_retval) override; 
447
448
/* Use this macro when declaring the members of this interface when the
449
   class doesn't implement the interface. This is useful for forwarding. */
450
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRUINT64 \
451
  nsresult GetData(uint64_t *aData); \
452
  nsresult SetData(uint64_t aData); \
453
  nsresult ToString(char * *_retval); 
454
455
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
456
#define NS_FORWARD_NSISUPPORTSPRUINT64(_to) \
457
  NS_IMETHOD GetData(uint64_t *aData) override { return _to GetData(aData); } \
458
  NS_IMETHOD SetData(uint64_t aData) override { return _to SetData(aData); } \
459
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
460
461
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
462
#define NS_FORWARD_SAFE_NSISUPPORTSPRUINT64(_to) \
463
  NS_IMETHOD GetData(uint64_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
464
  NS_IMETHOD SetData(uint64_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
465
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
466
467
468
/* starting interface:    nsISupportsPRTime */
469
#define NS_ISUPPORTSPRTIME_IID_STR "e2563630-4a1c-11d3-9890-006008962422"
470
471
#define NS_ISUPPORTSPRTIME_IID \
472
  {0xe2563630, 0x4a1c, 0x11d3, \
473
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
474
475
class NS_NO_VTABLE nsISupportsPRTime : public nsISupportsPrimitive {
476
 public:
477
478
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRTIME_IID)
479
480
  /* attribute PRTime data; */
481
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(PRTime *aData) = 0;
482
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(PRTime aData) = 0;
483
484
  /* string toString (); */
485
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
486
487
};
488
489
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRTime, NS_ISUPPORTSPRTIME_IID)
490
491
/* Use this macro when declaring classes that implement this interface. */
492
#define NS_DECL_NSISUPPORTSPRTIME \
493
  NS_IMETHOD GetData(PRTime *aData) override; \
494
  NS_IMETHOD SetData(PRTime aData) override; \
495
  NS_IMETHOD ToString(char * *_retval) override; 
496
497
/* Use this macro when declaring the members of this interface when the
498
   class doesn't implement the interface. This is useful for forwarding. */
499
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRTIME \
500
  nsresult GetData(PRTime *aData); \
501
  nsresult SetData(PRTime aData); \
502
  nsresult ToString(char * *_retval); 
503
504
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
505
#define NS_FORWARD_NSISUPPORTSPRTIME(_to) \
506
  NS_IMETHOD GetData(PRTime *aData) override { return _to GetData(aData); } \
507
  NS_IMETHOD SetData(PRTime aData) override { return _to SetData(aData); } \
508
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
509
510
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
511
#define NS_FORWARD_SAFE_NSISUPPORTSPRTIME(_to) \
512
  NS_IMETHOD GetData(PRTime *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
513
  NS_IMETHOD SetData(PRTime aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
514
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
515
516
517
/* starting interface:    nsISupportsChar */
518
#define NS_ISUPPORTSCHAR_IID_STR "e2b05e40-4a1c-11d3-9890-006008962422"
519
520
#define NS_ISUPPORTSCHAR_IID \
521
  {0xe2b05e40, 0x4a1c, 0x11d3, \
522
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
523
524
class NS_NO_VTABLE nsISupportsChar : public nsISupportsPrimitive {
525
 public:
526
527
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSCHAR_IID)
528
529
  /* attribute char data; */
530
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(char *aData) = 0;
531
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(char aData) = 0;
532
533
  /* string toString (); */
534
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
535
536
};
537
538
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsChar, NS_ISUPPORTSCHAR_IID)
539
540
/* Use this macro when declaring classes that implement this interface. */
541
#define NS_DECL_NSISUPPORTSCHAR \
542
  NS_IMETHOD GetData(char *aData) override; \
543
  NS_IMETHOD SetData(char aData) override; \
544
  NS_IMETHOD ToString(char * *_retval) override; 
545
546
/* Use this macro when declaring the members of this interface when the
547
   class doesn't implement the interface. This is useful for forwarding. */
548
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSCHAR \
549
  nsresult GetData(char *aData); \
550
  nsresult SetData(char aData); \
551
  nsresult ToString(char * *_retval); 
552
553
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
554
#define NS_FORWARD_NSISUPPORTSCHAR(_to) \
555
  NS_IMETHOD GetData(char *aData) override { return _to GetData(aData); } \
556
  NS_IMETHOD SetData(char aData) override { return _to SetData(aData); } \
557
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
558
559
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
560
#define NS_FORWARD_SAFE_NSISUPPORTSCHAR(_to) \
561
  NS_IMETHOD GetData(char *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
562
  NS_IMETHOD SetData(char aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
563
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
564
565
566
/* starting interface:    nsISupportsPRInt16 */
567
#define NS_ISUPPORTSPRINT16_IID_STR "e30d94b0-4a1c-11d3-9890-006008962422"
568
569
#define NS_ISUPPORTSPRINT16_IID \
570
  {0xe30d94b0, 0x4a1c, 0x11d3, \
571
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
572
573
class NS_NO_VTABLE nsISupportsPRInt16 : public nsISupportsPrimitive {
574
 public:
575
576
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRINT16_IID)
577
578
  /* attribute int16_t data; */
579
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(int16_t *aData) = 0;
580
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(int16_t aData) = 0;
581
582
  /* string toString (); */
583
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
584
585
};
586
587
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRInt16, NS_ISUPPORTSPRINT16_IID)
588
589
/* Use this macro when declaring classes that implement this interface. */
590
#define NS_DECL_NSISUPPORTSPRINT16 \
591
  NS_IMETHOD GetData(int16_t *aData) override; \
592
  NS_IMETHOD SetData(int16_t aData) override; \
593
  NS_IMETHOD ToString(char * *_retval) override; 
594
595
/* Use this macro when declaring the members of this interface when the
596
   class doesn't implement the interface. This is useful for forwarding. */
597
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRINT16 \
598
  nsresult GetData(int16_t *aData); \
599
  nsresult SetData(int16_t aData); \
600
  nsresult ToString(char * *_retval); 
601
602
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
603
#define NS_FORWARD_NSISUPPORTSPRINT16(_to) \
604
  NS_IMETHOD GetData(int16_t *aData) override { return _to GetData(aData); } \
605
  NS_IMETHOD SetData(int16_t aData) override { return _to SetData(aData); } \
606
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
607
608
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
609
#define NS_FORWARD_SAFE_NSISUPPORTSPRINT16(_to) \
610
  NS_IMETHOD GetData(int16_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
611
  NS_IMETHOD SetData(int16_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
612
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
613
614
615
/* starting interface:    nsISupportsPRInt32 */
616
#define NS_ISUPPORTSPRINT32_IID_STR "e36c5250-4a1c-11d3-9890-006008962422"
617
618
#define NS_ISUPPORTSPRINT32_IID \
619
  {0xe36c5250, 0x4a1c, 0x11d3, \
620
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
621
622
class NS_NO_VTABLE nsISupportsPRInt32 : public nsISupportsPrimitive {
623
 public:
624
625
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRINT32_IID)
626
627
  /* attribute int32_t data; */
628
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(int32_t *aData) = 0;
629
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(int32_t aData) = 0;
630
631
  /* string toString (); */
632
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
633
634
};
635
636
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRInt32, NS_ISUPPORTSPRINT32_IID)
637
638
/* Use this macro when declaring classes that implement this interface. */
639
#define NS_DECL_NSISUPPORTSPRINT32 \
640
  NS_IMETHOD GetData(int32_t *aData) override; \
641
  NS_IMETHOD SetData(int32_t aData) override; \
642
  NS_IMETHOD ToString(char * *_retval) override; 
643
644
/* Use this macro when declaring the members of this interface when the
645
   class doesn't implement the interface. This is useful for forwarding. */
646
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRINT32 \
647
  nsresult GetData(int32_t *aData); \
648
  nsresult SetData(int32_t aData); \
649
  nsresult ToString(char * *_retval); 
650
651
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
652
#define NS_FORWARD_NSISUPPORTSPRINT32(_to) \
653
  NS_IMETHOD GetData(int32_t *aData) override { return _to GetData(aData); } \
654
  NS_IMETHOD SetData(int32_t aData) override { return _to SetData(aData); } \
655
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
656
657
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
658
#define NS_FORWARD_SAFE_NSISUPPORTSPRINT32(_to) \
659
  NS_IMETHOD GetData(int32_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
660
  NS_IMETHOD SetData(int32_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
661
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
662
663
664
/* starting interface:    nsISupportsPRInt64 */
665
#define NS_ISUPPORTSPRINT64_IID_STR "e3cb0ff0-4a1c-11d3-9890-006008962422"
666
667
#define NS_ISUPPORTSPRINT64_IID \
668
  {0xe3cb0ff0, 0x4a1c, 0x11d3, \
669
    { 0x98, 0x90, 0x00, 0x60, 0x08, 0x96, 0x24, 0x22 }}
670
671
class NS_NO_VTABLE nsISupportsPRInt64 : public nsISupportsPrimitive {
672
 public:
673
674
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSPRINT64_IID)
675
676
  /* attribute int64_t data; */
677
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(int64_t *aData) = 0;
678
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(int64_t aData) = 0;
679
680
  /* string toString (); */
681
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
682
683
};
684
685
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsPRInt64, NS_ISUPPORTSPRINT64_IID)
686
687
/* Use this macro when declaring classes that implement this interface. */
688
#define NS_DECL_NSISUPPORTSPRINT64 \
689
  NS_IMETHOD GetData(int64_t *aData) override; \
690
  NS_IMETHOD SetData(int64_t aData) override; \
691
  NS_IMETHOD ToString(char * *_retval) override; 
692
693
/* Use this macro when declaring the members of this interface when the
694
   class doesn't implement the interface. This is useful for forwarding. */
695
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSPRINT64 \
696
  nsresult GetData(int64_t *aData); \
697
  nsresult SetData(int64_t aData); \
698
  nsresult ToString(char * *_retval); 
699
700
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
701
#define NS_FORWARD_NSISUPPORTSPRINT64(_to) \
702
  NS_IMETHOD GetData(int64_t *aData) override { return _to GetData(aData); } \
703
  NS_IMETHOD SetData(int64_t aData) override { return _to SetData(aData); } \
704
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
705
706
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
707
#define NS_FORWARD_SAFE_NSISUPPORTSPRINT64(_to) \
708
  NS_IMETHOD GetData(int64_t *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
709
  NS_IMETHOD SetData(int64_t aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
710
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
711
712
713
/* starting interface:    nsISupportsFloat */
714
#define NS_ISUPPORTSFLOAT_IID_STR "abeaa390-4ac0-11d3-baea-00805f8a5dd7"
715
716
#define NS_ISUPPORTSFLOAT_IID \
717
  {0xabeaa390, 0x4ac0, 0x11d3, \
718
    { 0xba, 0xea, 0x00, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 }}
719
720
class NS_NO_VTABLE nsISupportsFloat : public nsISupportsPrimitive {
721
 public:
722
723
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSFLOAT_IID)
724
725
  /* attribute float data; */
726
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(float *aData) = 0;
727
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(float aData) = 0;
728
729
  /* string toString (); */
730
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
731
732
};
733
734
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsFloat, NS_ISUPPORTSFLOAT_IID)
735
736
/* Use this macro when declaring classes that implement this interface. */
737
#define NS_DECL_NSISUPPORTSFLOAT \
738
  NS_IMETHOD GetData(float *aData) override; \
739
  NS_IMETHOD SetData(float aData) override; \
740
  NS_IMETHOD ToString(char * *_retval) override; 
741
742
/* Use this macro when declaring the members of this interface when the
743
   class doesn't implement the interface. This is useful for forwarding. */
744
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSFLOAT \
745
  nsresult GetData(float *aData); \
746
  nsresult SetData(float aData); \
747
  nsresult ToString(char * *_retval); 
748
749
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
750
#define NS_FORWARD_NSISUPPORTSFLOAT(_to) \
751
  NS_IMETHOD GetData(float *aData) override { return _to GetData(aData); } \
752
  NS_IMETHOD SetData(float aData) override { return _to SetData(aData); } \
753
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
754
755
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
756
#define NS_FORWARD_SAFE_NSISUPPORTSFLOAT(_to) \
757
  NS_IMETHOD GetData(float *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
758
  NS_IMETHOD SetData(float aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
759
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
760
761
762
/* starting interface:    nsISupportsDouble */
763
#define NS_ISUPPORTSDOUBLE_IID_STR "b32523a0-4ac0-11d3-baea-00805f8a5dd7"
764
765
#define NS_ISUPPORTSDOUBLE_IID \
766
  {0xb32523a0, 0x4ac0, 0x11d3, \
767
    { 0xba, 0xea, 0x00, 0x80, 0x5f, 0x8a, 0x5d, 0xd7 }}
768
769
class NS_NO_VTABLE nsISupportsDouble : public nsISupportsPrimitive {
770
 public:
771
772
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSDOUBLE_IID)
773
774
  /* attribute double data; */
775
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(double *aData) = 0;
776
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(double aData) = 0;
777
778
  /* string toString (); */
779
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
780
781
};
782
783
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsDouble, NS_ISUPPORTSDOUBLE_IID)
784
785
/* Use this macro when declaring classes that implement this interface. */
786
#define NS_DECL_NSISUPPORTSDOUBLE \
787
  NS_IMETHOD GetData(double *aData) override; \
788
  NS_IMETHOD SetData(double aData) override; \
789
  NS_IMETHOD ToString(char * *_retval) override; 
790
791
/* Use this macro when declaring the members of this interface when the
792
   class doesn't implement the interface. This is useful for forwarding. */
793
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSDOUBLE \
794
  nsresult GetData(double *aData); \
795
  nsresult SetData(double aData); \
796
  nsresult ToString(char * *_retval); 
797
798
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
799
#define NS_FORWARD_NSISUPPORTSDOUBLE(_to) \
800
  NS_IMETHOD GetData(double *aData) override { return _to GetData(aData); } \
801
  NS_IMETHOD SetData(double aData) override { return _to SetData(aData); } \
802
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
803
804
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
805
#define NS_FORWARD_SAFE_NSISUPPORTSDOUBLE(_to) \
806
  NS_IMETHOD GetData(double *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
807
  NS_IMETHOD SetData(double aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
808
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
809
810
811
/* starting interface:    nsISupportsInterfacePointer */
812
#define NS_ISUPPORTSINTERFACEPOINTER_IID_STR "995ea724-1dd1-11b2-9211-c21bdd3e7ed0"
813
814
#define NS_ISUPPORTSINTERFACEPOINTER_IID \
815
  {0x995ea724, 0x1dd1, 0x11b2, \
816
    { 0x92, 0x11, 0xc2, 0x1b, 0xdd, 0x3e, 0x7e, 0xd0 }}
817
818
class NS_NO_VTABLE nsISupportsInterfacePointer : public nsISupportsPrimitive {
819
 public:
820
821
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTSINTERFACEPOINTER_IID)
822
823
  /* attribute nsISupports data; */
824
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetData(nsISupports **aData) = 0;
825
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetData(nsISupports *aData) = 0;
826
827
  /* attribute nsIDPtr dataIID; */
828
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetDataIID(nsID * * aDataIID) = 0;
829
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD SetDataIID(const nsID * aDataIID) = 0;
830
831
  /* string toString (); */
832
  JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ToString(char * *_retval) = 0;
833
834
};
835
836
  NS_DEFINE_STATIC_IID_ACCESSOR(nsISupportsInterfacePointer, NS_ISUPPORTSINTERFACEPOINTER_IID)
837
838
/* Use this macro when declaring classes that implement this interface. */
839
#define NS_DECL_NSISUPPORTSINTERFACEPOINTER \
840
  NS_IMETHOD GetData(nsISupports **aData) override; \
841
  NS_IMETHOD SetData(nsISupports *aData) override; \
842
  NS_IMETHOD GetDataIID(nsID * * aDataIID) override; \
843
  NS_IMETHOD SetDataIID(const nsID * aDataIID) override; \
844
  NS_IMETHOD ToString(char * *_retval) override; 
845
846
/* Use this macro when declaring the members of this interface when the
847
   class doesn't implement the interface. This is useful for forwarding. */
848
#define NS_DECL_NON_VIRTUAL_NSISUPPORTSINTERFACEPOINTER \
849
  nsresult GetData(nsISupports **aData); \
850
  nsresult SetData(nsISupports *aData); \
851
  nsresult GetDataIID(nsID * * aDataIID); \
852
  nsresult SetDataIID(const nsID * aDataIID); \
853
  nsresult ToString(char * *_retval); 
854
855
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
856
#define NS_FORWARD_NSISUPPORTSINTERFACEPOINTER(_to) \
857
  NS_IMETHOD GetData(nsISupports **aData) override { return _to GetData(aData); } \
858
  NS_IMETHOD SetData(nsISupports *aData) override { return _to SetData(aData); } \
859
  NS_IMETHOD GetDataIID(nsID * * aDataIID) override { return _to GetDataIID(aDataIID); } \
860
  NS_IMETHOD SetDataIID(const nsID * aDataIID) override { return _to SetDataIID(aDataIID); } \
861
  NS_IMETHOD ToString(char * *_retval) override { return _to ToString(_retval); } 
862
863
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
864
#define NS_FORWARD_SAFE_NSISUPPORTSINTERFACEPOINTER(_to) \
865
  NS_IMETHOD GetData(nsISupports **aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetData(aData); } \
866
  NS_IMETHOD SetData(nsISupports *aData) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetData(aData); } \
867
  NS_IMETHOD GetDataIID(nsID * * aDataIID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDataIID(aDataIID); } \
868
  NS_IMETHOD SetDataIID(const nsID * aDataIID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDataIID(aDataIID); } \
869
  NS_IMETHOD ToString(char * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ToString(_retval); } 
870
871
872
#endif /* __gen_nsISupportsPrimitives_h__ */