Source code

Revision control

Other Tools

1
/* This Source Code Form is subject to the terms of the Mozilla Public
2
* License, v. 2.0. If a copy of the MPL was not distributed with this
3
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4
5
/** @file
6
* Helper functions for (de)serializing objects to/from ASCII strings.
7
*/
8
9
#ifndef NSSERIALIZATIONHELPER_H_
10
#define NSSERIALIZATIONHELPER_H_
11
12
#include "nsStringFwd.h"
13
#include "nsISerializationHelper.h"
14
#include "mozilla/Attributes.h"
15
16
class nsISerializable;
17
18
/**
19
* Serialize an object to an ASCII string.
20
*/
21
nsresult NS_SerializeToString(nsISerializable* obj, nsACString& str);
22
23
/**
24
* Deserialize an object.
25
*/
26
nsresult NS_DeserializeObject(const nsACString& str, nsISupports** obj);
27
28
class nsSerializationHelper final : public nsISerializationHelper {
29
~nsSerializationHelper() = default;
30
31
NS_DECL_ISUPPORTS
32
NS_DECL_NSISERIALIZATIONHELPER
33
};
34
35
#endif