dom/base/nsStructuredCloneContainer.h

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:6a1b809f2ff4
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 * vim: set ts=8 sw=2 et tw=80:
3 *
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7
8 #ifndef nsStructuredCloneContainer_h__
9 #define nsStructuredCloneContainer_h__
10
11 #include "nsIStructuredCloneContainer.h"
12 #include "mozilla/Attributes.h"
13
14 #define NS_STRUCTUREDCLONECONTAINER_CONTRACTID \
15 "@mozilla.org/docshell/structured-clone-container;1"
16 #define NS_STRUCTUREDCLONECONTAINER_CID \
17 { /* 38bd0634-0fd4-46f0-b85f-13ced889eeec */ \
18 0x38bd0634, \
19 0x0fd4, \
20 0x46f0, \
21 {0xb8, 0x5f, 0x13, 0xce, 0xd8, 0x89, 0xee, 0xec} \
22 }
23
24 class nsStructuredCloneContainer MOZ_FINAL : public nsIStructuredCloneContainer
25 {
26 public:
27 nsStructuredCloneContainer();
28 ~nsStructuredCloneContainer();
29
30 NS_DECL_ISUPPORTS
31 NS_DECL_NSISTRUCTUREDCLONECONTAINER
32
33 private:
34 uint64_t* mData;
35
36 // This needs to be size_t rather than a PR-type so it matches the JS API.
37 size_t mSize;
38 uint32_t mVersion;
39 };
40
41 #endif

mercurial