Qore Programming Language Reference Manual 1.18.1
Loading...
Searching...
No Matches
QC_Serializable.dox.h
1
3namespace Qore {
5
10 auto _data;
12 *hash<string, hash<ObjectSerializationInfo>> _index;
14 *list<string> _modules;
15};
16}
17
19namespace Qore {
21
26 string _class;
28 *hash<string, hash<string, auto>> _class_data;
29};
30}
31
33namespace Qore {
35
40 string _index;
41};
42}
43
45namespace Qore {
47
52 string _hash;
54 *hash<string, auto> _members;
55};
56}
57
59namespace Qore {
61
66 *list<auto> _elements;
68 string _list;
69};
70}
71
73namespace Qore {
75
97
98public:
100/***/
102
103public:
105/***/
107
108private:
110
148nothing deserializeMembers(hash<auto> members);
149
150public:
152
168
169public:
171
187
188private:
190
232*hash<auto> serializeMembers(*hash<auto> members);
233
234public:
236
254hash<SerializationInfo> serializeToData();
255
256public:
258
272static auto deserialize(InputStream stream);
273
274public:
276
289static auto deserialize(binary bin);
290
291public:
293
309static auto deserialize(string bin);
310
311public:
313
327static auto deserialize(hash<SerializationInfo> data);
328
329public:
331
345static hash<SerializationInfo> deserializeToData(InputStream stream);
346
347public:
349
363static hash<SerializationInfo> deserializeToData(binary bin);
364
365public:
367
383static serialize(auto val, OutputStream stream);
384
385public:
387
404static binary serialize(auto val);
405
406public:
408
428static hash<SerializationInfo> serializeToData(auto val);
429};
430}
This class defines an abstract interface for input streams.
Definition: QC_InputStream.dox.h:19
This class defines an abstract interface for output streams.
Definition: QC_OutputStream.dox.h:18
The Serializable class can be used to mark a class as being serializable.
Definition: QC_Serializable.dox.h:96
static auto deserialize(binary bin)
Deserializes data produced with serialize() and returns the value represented by the data.
static hash< SerializationInfo > deserializeToData(InputStream stream)
Deserializes data produced with serialize() and returns the value represented by the data.
static auto deserialize(InputStream stream)
Deserializes data produced with serialize() and returns the value represented by the data.
copy()
The copy constructor does not perform any action; this class is just used to mark a class as serializ...
static hash< SerializationInfo > deserializeToData(binary bin)
Deserializes data produced with serialize() and returns the value represented by the data.
static serialize(auto val, OutputStream stream)
serializes the data and writes the serialized data to the given output stream
static auto deserialize(hash< SerializationInfo > data)
Deserializes data produced with serializeToData() and returns the value represented by the data.
serialize(OutputStream stream)
converts the object to binary data representing the object
constructor()
The constructor does not perform any action; this class is just used to mark a class as serializable ...
nothing deserializeMembers(hash< auto > members)
overrides the default automatic member assignment logic for user classes during data deserialization
static auto deserialize(string bin)
Deserializes data produced with serialize() and returns the value represented by the data.
*hash< auto > serializeMembers(*hash< auto > members)
overrides the default automatic member retrieval for user classes during data serialization
static binary serialize(auto val)
serializes the data and returns the serialized data as a binary object
binary serialize()
converts the object to binary data representing the object
hash< SerializationInfo > serializeToData()
converts the object to a serialization hash representing the object
static hash< SerializationInfo > serializeToData(auto val)
converts the value to a serialization hash representing the value
binary binary()
Always returns an empty binary object (of zero length)
Qore namespace.
Definition: QC_AbstractSmartLock.dox.h:2
hash serialization information for typed hashes or untyped hashes
Definition: QC_Serializable.dox.h:50
string _hash
typed hash path name, if any; otherwise for an untyped hash: "^..." where ... is the complex value ty...
Definition: QC_Serializable.dox.h:52
*hash< string, auto > _members
member values
Definition: QC_Serializable.dox.h:54
object serialization information for an indexed object
Definition: QC_Serializable.dox.h:38
string _index
index value
Definition: QC_Serializable.dox.h:40
list serialization information
Definition: QC_Serializable.dox.h:64
string _list
the complex list element type info
Definition: QC_Serializable.dox.h:68
*list< auto > _elements
the data-serialized list elements
Definition: QC_Serializable.dox.h:66
object serialization information
Definition: QC_Serializable.dox.h:24
*hash< string, hash< string, auto > > _class_data
member values per class; class path -> member hash
Definition: QC_Serializable.dox.h:28
string _class
class path name
Definition: QC_Serializable.dox.h:26
serialization information
Definition: QC_Serializable.dox.h:8
*hash< string, hash< ObjectSerializationInfo > > _index
unique object index
Definition: QC_Serializable.dox.h:12
*list< string > _modules
list of modules to load to support the data
Definition: QC_Serializable.dox.h:14
auto _data
serialized data
Definition: QC_Serializable.dox.h:10