Line data Source code
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/. */
6 :
7 : #ifndef mozilla_storage_mozStorageAsyncStatementParams_h_
8 : #define mozilla_storage_mozStorageAsyncStatementParams_h_
9 :
10 : #include "mozIStorageStatementParams.h"
11 : #include "nsIXPCScriptable.h"
12 : #include "mozilla/Attributes.h"
13 :
14 : namespace mozilla {
15 : namespace storage {
16 :
17 : class AsyncStatement;
18 :
19 : /*
20 : * Since mozIStorageStatementParams is just a tagging interface we do not have
21 : * an async variant.
22 : */
23 : class AsyncStatementParams final : public mozIStorageStatementParams
24 : , public nsIXPCScriptable
25 : {
26 : public:
27 : explicit AsyncStatementParams(AsyncStatement *aStatement);
28 :
29 : // interfaces
30 : NS_DECL_ISUPPORTS
31 : NS_DECL_MOZISTORAGESTATEMENTPARAMS
32 : NS_DECL_NSIXPCSCRIPTABLE
33 :
34 : protected:
35 0 : virtual ~AsyncStatementParams() {}
36 :
37 : AsyncStatement *mStatement;
38 :
39 : friend class AsyncStatementParamsHolder;
40 : };
41 :
42 : } // namespace storage
43 : } // namespace mozilla
44 :
45 : #endif // mozilla_storage_mozStorageAsyncStatementParams_h_
|