32 #ifndef _QORE_CLASS_INTERN_QORESERIALIZABLE_H
34 #define _QORE_CLASS_INTERN_QORESERIALIZABLE_H
37 #include "qore/intern/StreamReader.h"
38 #include "qore/intern/StreamWriter.h"
45 typedef std::map<std::string, QoreObject*> oimap_t;
48 typedef std::map<std::string, std::string> imap_t;
51 typedef std::set<std::string> mset_t;
55 enum qore_stream_type :
unsigned char {
77 class ObjectIndexMap :
public oimap_t {
82 DLLLOCAL ~ObjectIndexMap();
89 friend class QoreInternalSerializationContext;
90 friend class QoreInternalDeserializationContext;
108 DLLLOCAL
virtual ~QoreSerializable() {}
145 DLLLOCAL
static QoreObject* deserializeIndexedObject(
const char* key,
const oimap_t& oimap,
ExceptionSink* xsink);
the base class for all data to be used as private data of Qore objects
Definition: AbstractPrivateData.h:44
holds arbitrary binary data
Definition: BinaryNode.h:41
Qore's parse tree/value type for date-time values, reference-counted, dynamically-allocated only.
Definition: DateTimeNode.h:45
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:48
Interface for private data of output streams.
Definition: OutputStream.h:44
defines string encoding functions in Qore
Definition: QoreEncoding.h:83
This is the hash or associative list container type in Qore, dynamically allocated only,...
Definition: QoreHashNode.h:50
This is the list container type in Qore, dynamically allocated only, reference counted.
Definition: QoreListNode.h:52
Qore's arbitrary-precision number value type, dynamically-allocated only, reference counted.
Definition: QoreNumberNode.h:51
the implementation of Qore's object data type, reference counted, dynamically-allocated only
Definition: QoreObject.h:60
Qore's string type supported by the QoreEncoding class.
Definition: QoreString.h:93
Qore's string value type, reference counted, dynamically-allocated only.
Definition: QoreStringNode.h:50
Private data for the Qore::StreamReader class.
Definition: StreamReader.h:45
Private data for the Qore::StreamWriter class.
Definition: StreamWriter.h:43
long long int64
64bit integer type, cannot use int64_t here since it breaks the API on some 64-bit systems due to equ...
Definition: common.h:260
The main value class in Qore, designed to be passed by value.
Definition: QoreValue.h:275