1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/dom/indexedDB/nsIIDBCursor.idl
3 : */
4 :
5 : #ifndef __gen_nsIIDBCursor_h__
6 : #define __gen_nsIIDBCursor_h__
7 :
8 :
9 : #ifndef __gen_nsISupports_h__
10 : #include "nsISupports.h"
11 : #endif
12 :
13 : #include "jspubtd.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 : class nsIIDBRequest; /* forward declaration */
20 :
21 :
22 : /* starting interface: nsIIDBCursor */
23 : #define NS_IIDBCURSOR_IID_STR "01136b3a-d84c-487c-b929-f5d012346c44"
24 :
25 : #define NS_IIDBCURSOR_IID \
26 : {0x01136b3a, 0xd84c, 0x487c, \
27 : { 0xb9, 0x29, 0xf5, 0xd0, 0x12, 0x34, 0x6c, 0x44 }}
28 :
29 163 : class NS_NO_VTABLE NS_SCRIPTABLE nsIIDBCursor : public nsISupports {
30 : public:
31 :
32 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IIDBCURSOR_IID)
33 :
34 : /* readonly attribute DOMString direction; */
35 : NS_SCRIPTABLE NS_IMETHOD GetDirection(nsAString & aDirection) = 0;
36 :
37 : /* readonly attribute nsISupports source; */
38 : NS_SCRIPTABLE NS_IMETHOD GetSource(nsISupports * *aSource) = 0;
39 :
40 : /* [implicit_jscontext] readonly attribute jsval key; */
41 : NS_SCRIPTABLE NS_IMETHOD GetKey(JSContext* cx, JS::Value *aKey) = 0;
42 :
43 : /* [implicit_jscontext] readonly attribute jsval primaryKey; */
44 : NS_SCRIPTABLE NS_IMETHOD GetPrimaryKey(JSContext* cx, JS::Value *aPrimaryKey) = 0;
45 :
46 : /* [implicit_jscontext] void continue ([optional] in jsval key); */
47 : NS_SCRIPTABLE NS_IMETHOD Continue(const JS::Value & key, JSContext* cx) = 0;
48 :
49 : /* [implicit_jscontext] nsIIDBRequest update (in jsval value); */
50 : NS_SCRIPTABLE NS_IMETHOD Update(const JS::Value & value, JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM) = 0;
51 :
52 : /* [implicit_jscontext] nsIIDBRequest delete (); */
53 : NS_SCRIPTABLE NS_IMETHOD Delete(JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM) = 0;
54 :
55 : /* void advance (in long count); */
56 : NS_SCRIPTABLE NS_IMETHOD Advance(PRInt32 count) = 0;
57 :
58 : };
59 :
60 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIIDBCursor, NS_IIDBCURSOR_IID)
61 :
62 : /* Use this macro when declaring classes that implement this interface. */
63 : #define NS_DECL_NSIIDBCURSOR \
64 : NS_SCRIPTABLE NS_IMETHOD GetDirection(nsAString & aDirection); \
65 : NS_SCRIPTABLE NS_IMETHOD GetSource(nsISupports * *aSource); \
66 : NS_SCRIPTABLE NS_IMETHOD GetKey(JSContext* cx, JS::Value *aKey); \
67 : NS_SCRIPTABLE NS_IMETHOD GetPrimaryKey(JSContext* cx, JS::Value *aPrimaryKey); \
68 : NS_SCRIPTABLE NS_IMETHOD Continue(const JS::Value & key, JSContext* cx); \
69 : NS_SCRIPTABLE NS_IMETHOD Update(const JS::Value & value, JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM); \
70 : NS_SCRIPTABLE NS_IMETHOD Delete(JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM); \
71 : NS_SCRIPTABLE NS_IMETHOD Advance(PRInt32 count);
72 :
73 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
74 : #define NS_FORWARD_NSIIDBCURSOR(_to) \
75 : NS_SCRIPTABLE NS_IMETHOD GetDirection(nsAString & aDirection) { return _to GetDirection(aDirection); } \
76 : NS_SCRIPTABLE NS_IMETHOD GetSource(nsISupports * *aSource) { return _to GetSource(aSource); } \
77 : NS_SCRIPTABLE NS_IMETHOD GetKey(JSContext* cx, JS::Value *aKey) { return _to GetKey(cx, aKey); } \
78 : NS_SCRIPTABLE NS_IMETHOD GetPrimaryKey(JSContext* cx, JS::Value *aPrimaryKey) { return _to GetPrimaryKey(cx, aPrimaryKey); } \
79 : NS_SCRIPTABLE NS_IMETHOD Continue(const JS::Value & key, JSContext* cx) { return _to Continue(key, cx); } \
80 : NS_SCRIPTABLE NS_IMETHOD Update(const JS::Value & value, JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM) { return _to Update(value, cx, _retval); } \
81 : NS_SCRIPTABLE NS_IMETHOD Delete(JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM) { return _to Delete(cx, _retval); } \
82 : NS_SCRIPTABLE NS_IMETHOD Advance(PRInt32 count) { return _to Advance(count); }
83 :
84 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
85 : #define NS_FORWARD_SAFE_NSIIDBCURSOR(_to) \
86 : NS_SCRIPTABLE NS_IMETHOD GetDirection(nsAString & aDirection) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDirection(aDirection); } \
87 : NS_SCRIPTABLE NS_IMETHOD GetSource(nsISupports * *aSource) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSource(aSource); } \
88 : NS_SCRIPTABLE NS_IMETHOD GetKey(JSContext* cx, JS::Value *aKey) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetKey(cx, aKey); } \
89 : NS_SCRIPTABLE NS_IMETHOD GetPrimaryKey(JSContext* cx, JS::Value *aPrimaryKey) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPrimaryKey(cx, aPrimaryKey); } \
90 : NS_SCRIPTABLE NS_IMETHOD Continue(const JS::Value & key, JSContext* cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->Continue(key, cx); } \
91 : NS_SCRIPTABLE NS_IMETHOD Update(const JS::Value & value, JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Update(value, cx, _retval); } \
92 : NS_SCRIPTABLE NS_IMETHOD Delete(JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Delete(cx, _retval); } \
93 : NS_SCRIPTABLE NS_IMETHOD Advance(PRInt32 count) { return !_to ? NS_ERROR_NULL_POINTER : _to->Advance(count); }
94 :
95 : #if 0
96 : /* Use the code below as a template for the implementation class for this interface. */
97 :
98 : /* Header file */
99 : class nsIDBCursor : public nsIIDBCursor
100 : {
101 : public:
102 : NS_DECL_ISUPPORTS
103 : NS_DECL_NSIIDBCURSOR
104 :
105 : nsIDBCursor();
106 :
107 : private:
108 : ~nsIDBCursor();
109 :
110 : protected:
111 : /* additional members */
112 : };
113 :
114 : /* Implementation file */
115 : NS_IMPL_ISUPPORTS1(nsIDBCursor, nsIIDBCursor)
116 :
117 : nsIDBCursor::nsIDBCursor()
118 : {
119 : /* member initializers and constructor code */
120 : }
121 :
122 : nsIDBCursor::~nsIDBCursor()
123 : {
124 : /* destructor code */
125 : }
126 :
127 : /* readonly attribute DOMString direction; */
128 : NS_IMETHODIMP nsIDBCursor::GetDirection(nsAString & aDirection)
129 : {
130 : return NS_ERROR_NOT_IMPLEMENTED;
131 : }
132 :
133 : /* readonly attribute nsISupports source; */
134 : NS_IMETHODIMP nsIDBCursor::GetSource(nsISupports * *aSource)
135 : {
136 : return NS_ERROR_NOT_IMPLEMENTED;
137 : }
138 :
139 : /* [implicit_jscontext] readonly attribute jsval key; */
140 : NS_IMETHODIMP nsIDBCursor::GetKey(JSContext* cx, JS::Value *aKey)
141 : {
142 : return NS_ERROR_NOT_IMPLEMENTED;
143 : }
144 :
145 : /* [implicit_jscontext] readonly attribute jsval primaryKey; */
146 : NS_IMETHODIMP nsIDBCursor::GetPrimaryKey(JSContext* cx, JS::Value *aPrimaryKey)
147 : {
148 : return NS_ERROR_NOT_IMPLEMENTED;
149 : }
150 :
151 : /* [implicit_jscontext] void continue ([optional] in jsval key); */
152 : NS_IMETHODIMP nsIDBCursor::Continue(const JS::Value & key, JSContext* cx)
153 : {
154 : return NS_ERROR_NOT_IMPLEMENTED;
155 : }
156 :
157 : /* [implicit_jscontext] nsIIDBRequest update (in jsval value); */
158 : NS_IMETHODIMP nsIDBCursor::Update(const JS::Value & value, JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM)
159 : {
160 : return NS_ERROR_NOT_IMPLEMENTED;
161 : }
162 :
163 : /* [implicit_jscontext] nsIIDBRequest delete (); */
164 : NS_IMETHODIMP nsIDBCursor::Delete(JSContext* cx, nsIIDBRequest * *_retval NS_OUTPARAM)
165 : {
166 : return NS_ERROR_NOT_IMPLEMENTED;
167 : }
168 :
169 : /* void advance (in long count); */
170 : NS_IMETHODIMP nsIDBCursor::Advance(PRInt32 count)
171 : {
172 : return NS_ERROR_NOT_IMPLEMENTED;
173 : }
174 :
175 : /* End of implementation class template. */
176 : #endif
177 :
178 :
179 : #endif /* __gen_nsIIDBCursor_h__ */
|