Bug 1890844 - Tiny cleanup of classes implementing nsDOMCSSDeclaration r=layout-revie...
[gecko.git] / storage / mozStorageResultSet.h
blob0716504378e5f90c2680c7e8ca8ce821bd1d86bf
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 * vim: sw=2 ts=2 et lcs=trail\:.,tab\:>~ :
3 * This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef mozStorageResultSet_h
8 #define mozStorageResultSet_h
10 #include "mozIStorageResultSet.h"
11 #include "nsCOMArray.h"
12 #include "mozilla/Attributes.h"
13 class mozIStorageRow;
15 namespace mozilla {
16 namespace storage {
18 class ResultSet final : public mozIStorageResultSet {
19 public:
20 NS_DECL_THREADSAFE_ISUPPORTS
21 NS_DECL_MOZISTORAGERESULTSET
23 ResultSet();
25 /**
26 * Adds a tuple to this result set.
28 nsresult add(mozIStorageRow* aTuple);
30 /**
31 * @returns the number of rows this result set holds.
33 int32_t rows() const { return mData.Count(); }
35 private:
36 ~ResultSet();
38 /**
39 * Stores the current index of the active result set.
41 int32_t mCurrentIndex;
43 /**
44 * Stores the tuples.
46 nsCOMArray<mozIStorageRow> mData;
49 } // namespace storage
50 } // namespace mozilla
52 #endif // mozStorageResultSet_h