1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/dom/base/nsStructuredCloneContainer.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,41 @@ 1.4 +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- 1.5 + * vim: set ts=8 sw=2 et tw=80: 1.6 + * 1.7 + * This Source Code Form is subject to the terms of the Mozilla Public 1.8 + * License, v. 2.0. If a copy of the MPL was not distributed with this 1.9 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 1.10 + 1.11 +#ifndef nsStructuredCloneContainer_h__ 1.12 +#define nsStructuredCloneContainer_h__ 1.13 + 1.14 +#include "nsIStructuredCloneContainer.h" 1.15 +#include "mozilla/Attributes.h" 1.16 + 1.17 +#define NS_STRUCTUREDCLONECONTAINER_CONTRACTID \ 1.18 + "@mozilla.org/docshell/structured-clone-container;1" 1.19 +#define NS_STRUCTUREDCLONECONTAINER_CID \ 1.20 +{ /* 38bd0634-0fd4-46f0-b85f-13ced889eeec */ \ 1.21 + 0x38bd0634, \ 1.22 + 0x0fd4, \ 1.23 + 0x46f0, \ 1.24 + {0xb8, 0x5f, 0x13, 0xce, 0xd8, 0x89, 0xee, 0xec} \ 1.25 +} 1.26 + 1.27 +class nsStructuredCloneContainer MOZ_FINAL : public nsIStructuredCloneContainer 1.28 +{ 1.29 + public: 1.30 + nsStructuredCloneContainer(); 1.31 + ~nsStructuredCloneContainer(); 1.32 + 1.33 + NS_DECL_ISUPPORTS 1.34 + NS_DECL_NSISTRUCTUREDCLONECONTAINER 1.35 + 1.36 + private: 1.37 + uint64_t* mData; 1.38 + 1.39 + // This needs to be size_t rather than a PR-type so it matches the JS API. 1.40 + size_t mSize; 1.41 + uint32_t mVersion; 1.42 +}; 1.43 + 1.44 +#endif