#include "rapidjson/document.h"
#include <iostream>
#include <map>
#include <memory>
#include <string>
#include <type_traits>
#include <vector>
Go to the source code of this file.
|
void | Json::serialize (std::string filename, ISValue *p) |
| Function to start serializing an onbject.
|
|
void | Json::deserialize (std::string filename, ISValue *p) |
| Function to start deserializing a file.
|
|
◆ JSON
Value:
Macros To serialize an object you need to have the GetProperty() function in the object.
This is complex for each application programmer to execute so therefore these macros have benn implemented. Each macro start with JSONSTART then each of the types you want to serialize and to end the macro you write JSONEND.
Definition at line 525 of file serializer.h.
◆ JSONBOOL
Value: { \
# m, std::make_shared < Json::ISBool>(m) \
}
Definition at line 557 of file serializer.h.
◆ JSONDOUBLE
Value: { \
# m, std::make_shared < Json::ISDouble>(m) \
}
Definition at line 549 of file serializer.h.
◆ JSONDOUBLEVECTOR
#define JSONDOUBLEVECTOR |
( |
|
m | ) |
|
Value: { \
# m, std::make_shared < Json::ISDoubleVector>(m) \
}
Definition at line 553 of file serializer.h.
◆ JSONEND
Value: } \
; \
return prop; \
} \
;
Definition at line 590 of file serializer.h.
◆ JSONFLOAT
Value: { \
# m, std::make_shared < Json::ISFloat>(m) \
}
Definition at line 541 of file serializer.h.
◆ JSONFLOATVECTOR
#define JSONFLOATVECTOR |
( |
|
m | ) |
|
Value: { \
# m, std::make_shared < Json::ISFloatVector>(m) \
}
Definition at line 545 of file serializer.h.
◆ JSONINT
Value: { \
# m, std::make_shared < Json::ISInt>(m) \
}
Definition at line 533 of file serializer.h.
◆ JSONINTVECTOR
#define JSONINTVECTOR |
( |
|
m | ) |
|
Value: { \
# m, std::make_shared < Json::ISIntVector>(m) \
}
Definition at line 537 of file serializer.h.
◆ JSONMEMBER
#define JSONMEMBER |
( |
|
T, |
|
|
|
m |
|
) |
| |
Value: { \
# m, std::make_shared < Json::ISMember < T>>(m) \
}
Definition at line 577 of file serializer.h.
◆ JSONMEMBERVECTOR
#define JSONMEMBERVECTOR |
( |
|
T, |
|
|
|
m |
|
) |
| |
Value: { \
# m, std::make_shared < Json::ISMemberVector < T>>(m) \
}
Definition at line 581 of file serializer.h.
◆ JSONMEMVECVEC
#define JSONMEMVECVEC |
( |
|
T, |
|
|
|
m |
|
) |
| |
Value: { \
# m, std::make_shared < Json::ISMemVecVec < T>>(m) \
}
Definition at line 585 of file serializer.h.
◆ JSONOBJECT
#define JSONOBJECT |
( |
|
T, |
|
|
|
m |
|
) |
| |
Value: { \
# m, std::make_shared < Json::ISObject < T>>(m) \
}
Definition at line 565 of file serializer.h.
◆ JSONOBJECTVECTOR
#define JSONOBJECTVECTOR |
( |
|
T, |
|
|
|
m |
|
) |
| |
Value: { \
# m, std::make_shared < Json::ISObjectVector < T>>(m) \
}
Definition at line 569 of file serializer.h.
◆ JSONOBJVECVEC
#define JSONOBJVECVEC |
( |
|
T, |
|
|
|
m |
|
) |
| |
Value: { \
# m, std::make_shared < Json::ISObjVecVec < T>>(m) \
}
Definition at line 573 of file serializer.h.
◆ JSONSTART
Value:
{ \
std::vector< ISProperty > ISProperties
ISProperties is a vector with ISProperty.
Definition at line 529 of file serializer.h.
◆ JSONSTRING
Value: { \
# m, std::make_shared < Json::ISString>(m) \
}
Definition at line 561 of file serializer.h.
◆ debug