Bug 1728955: part 8) Refactor `DisplayErrCode` in Windows' `nsClipboard`. r=masayuki
[gecko.git] / storage / IStorageBindingParamsInternal.h
bloba056ae326980757dd21a5bee1bd9ceb706852219
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 * vim: sw=2 ts=2 sts=2 expandtab
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 mozilla_storage_IStorageBindingParamsInternal_h_
8 #define mozilla_storage_IStorageBindingParamsInternal_h_
10 #include "nsISupports.h"
12 struct sqlite3_stmt;
13 class mozIStorageError;
15 namespace mozilla {
16 namespace storage {
18 #define ISTORAGEBINDINGPARAMSINTERNAL_IID \
19 { \
20 0x4c43d33a, 0xc620, 0x41b8, { \
21 0xba, 0x1d, 0x50, 0xc5, 0xb1, 0xe9, 0x1a, 0x04 \
22 } \
25 /**
26 * Implementation-only interface for mozIStorageBindingParams. This defines the
27 * set of methods required by the asynchronous execution code in order to
28 * consume the contents stored in mozIStorageBindingParams instances.
30 class IStorageBindingParamsInternal : public nsISupports {
31 public:
32 NS_DECLARE_STATIC_IID_ACCESSOR(ISTORAGEBINDINGPARAMSINTERNAL_IID)
34 /**
35 * Binds our stored data to the statement.
37 * @param aStatement
38 * The statement to bind our data to.
39 * @return nullptr on success, or a mozIStorageError object if an error
40 * occurred.
42 virtual already_AddRefed<mozIStorageError> bind(sqlite3_stmt* aStatement) = 0;
45 NS_DEFINE_STATIC_IID_ACCESSOR(IStorageBindingParamsInternal,
46 ISTORAGEBINDINGPARAMSINTERNAL_IID)
48 #define NS_DECL_ISTORAGEBINDINGPARAMSINTERNAL \
49 already_AddRefed<mozIStorageError> bind(sqlite3_stmt* aStatement) override;
51 } // namespace storage
52 } // namespace mozilla
54 #endif // mozilla_storage_IStorageBindingParamsInternal_h_