1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/xpcom/ds/nsIEnumerator.idl
3 : */
4 :
5 : #ifndef __gen_nsIEnumerator_h__
6 : #define __gen_nsIEnumerator_h__
7 :
8 :
9 : #ifndef __gen_nsISimpleEnumerator_h__
10 : #include "nsISimpleEnumerator.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 : #define NS_ENUMERATOR_FALSE 1
18 :
19 : /* starting interface: nsIEnumerator */
20 : #define NS_IENUMERATOR_IID_STR "ad385286-cbc4-11d2-8cca-0060b0fc14a3"
21 :
22 : #define NS_IENUMERATOR_IID \
23 : {0xad385286, 0xcbc4, 0x11d2, \
24 : { 0x8c, 0xca, 0x00, 0x60, 0xb0, 0xfc, 0x14, 0xa3 }}
25 :
26 306 : class NS_NO_VTABLE NS_SCRIPTABLE nsIEnumerator : public nsISupports {
27 : public:
28 :
29 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IENUMERATOR_IID)
30 :
31 : /* void first (); */
32 : NS_SCRIPTABLE NS_IMETHOD First(void) = 0;
33 :
34 : /* void next (); */
35 : NS_SCRIPTABLE NS_IMETHOD Next(void) = 0;
36 :
37 : /* nsISupports currentItem (); */
38 : NS_SCRIPTABLE NS_IMETHOD CurrentItem(nsISupports * *_retval NS_OUTPARAM) = 0;
39 :
40 : /* void isDone (); */
41 : NS_SCRIPTABLE NS_IMETHOD IsDone(void) = 0;
42 :
43 : };
44 :
45 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIEnumerator, NS_IENUMERATOR_IID)
46 :
47 : /* Use this macro when declaring classes that implement this interface. */
48 : #define NS_DECL_NSIENUMERATOR \
49 : NS_SCRIPTABLE NS_IMETHOD First(void); \
50 : NS_SCRIPTABLE NS_IMETHOD Next(void); \
51 : NS_SCRIPTABLE NS_IMETHOD CurrentItem(nsISupports * *_retval NS_OUTPARAM); \
52 : NS_SCRIPTABLE NS_IMETHOD IsDone(void);
53 :
54 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
55 : #define NS_FORWARD_NSIENUMERATOR(_to) \
56 : NS_SCRIPTABLE NS_IMETHOD First(void) { return _to First(); } \
57 : NS_SCRIPTABLE NS_IMETHOD Next(void) { return _to Next(); } \
58 : NS_SCRIPTABLE NS_IMETHOD CurrentItem(nsISupports * *_retval NS_OUTPARAM) { return _to CurrentItem(_retval); } \
59 : NS_SCRIPTABLE NS_IMETHOD IsDone(void) { return _to IsDone(); }
60 :
61 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
62 : #define NS_FORWARD_SAFE_NSIENUMERATOR(_to) \
63 : NS_SCRIPTABLE NS_IMETHOD First(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->First(); } \
64 : NS_SCRIPTABLE NS_IMETHOD Next(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Next(); } \
65 : NS_SCRIPTABLE NS_IMETHOD CurrentItem(nsISupports * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CurrentItem(_retval); } \
66 : NS_SCRIPTABLE NS_IMETHOD IsDone(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsDone(); }
67 :
68 : #if 0
69 : /* Use the code below as a template for the implementation class for this interface. */
70 :
71 : /* Header file */
72 : class nsEnumerator : public nsIEnumerator
73 : {
74 : public:
75 : NS_DECL_ISUPPORTS
76 : NS_DECL_NSIENUMERATOR
77 :
78 : nsEnumerator();
79 :
80 : private:
81 : ~nsEnumerator();
82 :
83 : protected:
84 : /* additional members */
85 : };
86 :
87 : /* Implementation file */
88 : NS_IMPL_ISUPPORTS1(nsEnumerator, nsIEnumerator)
89 :
90 : nsEnumerator::nsEnumerator()
91 : {
92 : /* member initializers and constructor code */
93 : }
94 :
95 : nsEnumerator::~nsEnumerator()
96 : {
97 : /* destructor code */
98 : }
99 :
100 : /* void first (); */
101 : NS_IMETHODIMP nsEnumerator::First()
102 : {
103 : return NS_ERROR_NOT_IMPLEMENTED;
104 : }
105 :
106 : /* void next (); */
107 : NS_IMETHODIMP nsEnumerator::Next()
108 : {
109 : return NS_ERROR_NOT_IMPLEMENTED;
110 : }
111 :
112 : /* nsISupports currentItem (); */
113 : NS_IMETHODIMP nsEnumerator::CurrentItem(nsISupports * *_retval NS_OUTPARAM)
114 : {
115 : return NS_ERROR_NOT_IMPLEMENTED;
116 : }
117 :
118 : /* void isDone (); */
119 : NS_IMETHODIMP nsEnumerator::IsDone()
120 : {
121 : return NS_ERROR_NOT_IMPLEMENTED;
122 : }
123 :
124 : /* End of implementation class template. */
125 : #endif
126 :
127 :
128 : /* starting interface: nsIBidirectionalEnumerator */
129 : #define NS_IBIDIRECTIONALENUMERATOR_IID_STR "75f158a0-cadd-11d2-8cca-0060b0fc14a3"
130 :
131 : #define NS_IBIDIRECTIONALENUMERATOR_IID \
132 : {0x75f158a0, 0xcadd, 0x11d2, \
133 : { 0x8c, 0xca, 0x00, 0x60, 0xb0, 0xfc, 0x14, 0xa3 }}
134 :
135 306 : class NS_NO_VTABLE nsIBidirectionalEnumerator : public nsIEnumerator {
136 : public:
137 :
138 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IBIDIRECTIONALENUMERATOR_IID)
139 :
140 : /* void last (); */
141 : NS_IMETHOD Last(void) = 0;
142 :
143 : /* void prev (); */
144 : NS_IMETHOD Prev(void) = 0;
145 :
146 : };
147 :
148 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIBidirectionalEnumerator, NS_IBIDIRECTIONALENUMERATOR_IID)
149 :
150 : /* Use this macro when declaring classes that implement this interface. */
151 : #define NS_DECL_NSIBIDIRECTIONALENUMERATOR \
152 : NS_IMETHOD Last(void); \
153 : NS_IMETHOD Prev(void);
154 :
155 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
156 : #define NS_FORWARD_NSIBIDIRECTIONALENUMERATOR(_to) \
157 : NS_IMETHOD Last(void) { return _to Last(); } \
158 : NS_IMETHOD Prev(void) { return _to Prev(); }
159 :
160 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
161 : #define NS_FORWARD_SAFE_NSIBIDIRECTIONALENUMERATOR(_to) \
162 : NS_IMETHOD Last(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Last(); } \
163 : NS_IMETHOD Prev(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Prev(); }
164 :
165 : #if 0
166 : /* Use the code below as a template for the implementation class for this interface. */
167 :
168 : /* Header file */
169 : class nsBidirectionalEnumerator : public nsIBidirectionalEnumerator
170 : {
171 : public:
172 : NS_DECL_ISUPPORTS
173 : NS_DECL_NSIBIDIRECTIONALENUMERATOR
174 :
175 : nsBidirectionalEnumerator();
176 :
177 : private:
178 : ~nsBidirectionalEnumerator();
179 :
180 : protected:
181 : /* additional members */
182 : };
183 :
184 : /* Implementation file */
185 : NS_IMPL_ISUPPORTS1(nsBidirectionalEnumerator, nsIBidirectionalEnumerator)
186 :
187 : nsBidirectionalEnumerator::nsBidirectionalEnumerator()
188 : {
189 : /* member initializers and constructor code */
190 : }
191 :
192 : nsBidirectionalEnumerator::~nsBidirectionalEnumerator()
193 : {
194 : /* destructor code */
195 : }
196 :
197 : /* void last (); */
198 : NS_IMETHODIMP nsBidirectionalEnumerator::Last()
199 : {
200 : return NS_ERROR_NOT_IMPLEMENTED;
201 : }
202 :
203 : /* void prev (); */
204 : NS_IMETHODIMP nsBidirectionalEnumerator::Prev()
205 : {
206 : return NS_ERROR_NOT_IMPLEMENTED;
207 : }
208 :
209 : /* End of implementation class template. */
210 : #endif
211 :
212 :
213 : #endif /* __gen_nsIEnumerator_h__ */
|