1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/xpcom/ds/nsIPropertyBag.idl
3 : */
4 :
5 : #ifndef __gen_nsIPropertyBag_h__
6 : #define __gen_nsIPropertyBag_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 : class nsIVariant; /* forward declaration */
18 :
19 : class nsISimpleEnumerator; /* forward declaration */
20 :
21 :
22 : /* starting interface: nsIPropertyBag */
23 : #define NS_IPROPERTYBAG_IID_STR "bfcd37b0-a49f-11d5-910d-0010a4e73d9a"
24 :
25 : #define NS_IPROPERTYBAG_IID \
26 : {0xbfcd37b0, 0xa49f, 0x11d5, \
27 : { 0x91, 0x0d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
28 :
29 223325 : class NS_NO_VTABLE NS_SCRIPTABLE nsIPropertyBag : public nsISupports {
30 : public:
31 :
32 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPROPERTYBAG_IID)
33 :
34 : /* readonly attribute nsISimpleEnumerator enumerator; */
35 : NS_SCRIPTABLE NS_IMETHOD GetEnumerator(nsISimpleEnumerator * *aEnumerator) = 0;
36 :
37 : /* nsIVariant getProperty (in AString name); */
38 : NS_SCRIPTABLE NS_IMETHOD GetProperty(const nsAString & name, nsIVariant * *_retval NS_OUTPARAM) = 0;
39 :
40 : };
41 :
42 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIPropertyBag, NS_IPROPERTYBAG_IID)
43 :
44 : /* Use this macro when declaring classes that implement this interface. */
45 : #define NS_DECL_NSIPROPERTYBAG \
46 : NS_SCRIPTABLE NS_IMETHOD GetEnumerator(nsISimpleEnumerator * *aEnumerator); \
47 : NS_SCRIPTABLE NS_IMETHOD GetProperty(const nsAString & name, nsIVariant * *_retval NS_OUTPARAM);
48 :
49 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
50 : #define NS_FORWARD_NSIPROPERTYBAG(_to) \
51 : NS_SCRIPTABLE NS_IMETHOD GetEnumerator(nsISimpleEnumerator * *aEnumerator) { return _to GetEnumerator(aEnumerator); } \
52 : NS_SCRIPTABLE NS_IMETHOD GetProperty(const nsAString & name, nsIVariant * *_retval NS_OUTPARAM) { return _to GetProperty(name, _retval); }
53 :
54 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
55 : #define NS_FORWARD_SAFE_NSIPROPERTYBAG(_to) \
56 : NS_SCRIPTABLE NS_IMETHOD GetEnumerator(nsISimpleEnumerator * *aEnumerator) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetEnumerator(aEnumerator); } \
57 : NS_SCRIPTABLE NS_IMETHOD GetProperty(const nsAString & name, nsIVariant * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetProperty(name, _retval); }
58 :
59 : #if 0
60 : /* Use the code below as a template for the implementation class for this interface. */
61 :
62 : /* Header file */
63 : class nsPropertyBag : public nsIPropertyBag
64 : {
65 : public:
66 : NS_DECL_ISUPPORTS
67 : NS_DECL_NSIPROPERTYBAG
68 :
69 : nsPropertyBag();
70 :
71 : private:
72 : ~nsPropertyBag();
73 :
74 : protected:
75 : /* additional members */
76 : };
77 :
78 : /* Implementation file */
79 : NS_IMPL_ISUPPORTS1(nsPropertyBag, nsIPropertyBag)
80 :
81 : nsPropertyBag::nsPropertyBag()
82 : {
83 : /* member initializers and constructor code */
84 : }
85 :
86 : nsPropertyBag::~nsPropertyBag()
87 : {
88 : /* destructor code */
89 : }
90 :
91 : /* readonly attribute nsISimpleEnumerator enumerator; */
92 : NS_IMETHODIMP nsPropertyBag::GetEnumerator(nsISimpleEnumerator * *aEnumerator)
93 : {
94 : return NS_ERROR_NOT_IMPLEMENTED;
95 : }
96 :
97 : /* nsIVariant getProperty (in AString name); */
98 : NS_IMETHODIMP nsPropertyBag::GetProperty(const nsAString & name, nsIVariant * *_retval NS_OUTPARAM)
99 : {
100 : return NS_ERROR_NOT_IMPLEMENTED;
101 : }
102 :
103 : /* End of implementation class template. */
104 : #endif
105 :
106 :
107 : #endif /* __gen_nsIPropertyBag_h__ */
|