Line data Source code
1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM ../../../dist/idl/nsIProperty.idl
3 : */
4 :
5 : #ifndef __gen_nsIProperty_h__
6 : #define __gen_nsIProperty_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 :
20 : /* starting interface: nsIProperty */
21 : #define NS_IPROPERTY_IID_STR "6dcf9030-a49f-11d5-910d-0010a4e73d9a"
22 :
23 : #define NS_IPROPERTY_IID \
24 : {0x6dcf9030, 0xa49f, 0x11d5, \
25 : { 0x91, 0x0d, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
26 :
27 0 : class NS_NO_VTABLE nsIProperty : public nsISupports {
28 : public:
29 :
30 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPROPERTY_IID)
31 :
32 : /* readonly attribute AString name; */
33 : NS_IMETHOD GetName(nsAString & aName) = 0;
34 :
35 : /* readonly attribute nsIVariant value; */
36 : NS_IMETHOD GetValue(nsIVariant * *aValue) = 0;
37 :
38 : };
39 :
40 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIProperty, NS_IPROPERTY_IID)
41 :
42 : /* Use this macro when declaring classes that implement this interface. */
43 : #define NS_DECL_NSIPROPERTY \
44 : NS_IMETHOD GetName(nsAString & aName) override; \
45 : NS_IMETHOD GetValue(nsIVariant * *aValue) override;
46 :
47 : /* Use this macro when declaring the members of this interface when the
48 : class doesn't implement the interface. This is useful for forwarding. */
49 : #define NS_DECL_NON_VIRTUAL_NSIPROPERTY \
50 : nsresult GetName(nsAString & aName); \
51 : nsresult GetValue(nsIVariant * *aValue);
52 :
53 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
54 : #define NS_FORWARD_NSIPROPERTY(_to) \
55 : NS_IMETHOD GetName(nsAString & aName) override { return _to GetName(aName); } \
56 : NS_IMETHOD GetValue(nsIVariant * *aValue) override { return _to GetValue(aValue); }
57 :
58 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
59 : #define NS_FORWARD_SAFE_NSIPROPERTY(_to) \
60 : NS_IMETHOD GetName(nsAString & aName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetName(aName); } \
61 : NS_IMETHOD GetValue(nsIVariant * *aValue) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetValue(aValue); }
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 nsProperty : public nsIProperty
68 : {
69 : public:
70 : NS_DECL_ISUPPORTS
71 : NS_DECL_NSIPROPERTY
72 :
73 : nsProperty();
74 :
75 : private:
76 : ~nsProperty();
77 :
78 : protected:
79 : /* additional members */
80 : };
81 :
82 : /* Implementation file */
83 : NS_IMPL_ISUPPORTS(nsProperty, nsIProperty)
84 :
85 : nsProperty::nsProperty()
86 : {
87 : /* member initializers and constructor code */
88 : }
89 :
90 : nsProperty::~nsProperty()
91 : {
92 : /* destructor code */
93 : }
94 :
95 : /* readonly attribute AString name; */
96 : NS_IMETHODIMP nsProperty::GetName(nsAString & aName)
97 : {
98 : return NS_ERROR_NOT_IMPLEMENTED;
99 : }
100 :
101 : /* readonly attribute nsIVariant value; */
102 : NS_IMETHODIMP nsProperty::GetValue(nsIVariant * *aValue)
103 : {
104 : return NS_ERROR_NOT_IMPLEMENTED;
105 : }
106 :
107 : /* End of implementation class template. */
108 : #endif
109 :
110 :
111 : #endif /* __gen_nsIProperty_h__ */
|