default initialize rpc structures

This commit is contained in:
moneromooo-monero
2019-01-18 01:05:58 +00:00
parent ef93b0995c
commit e396146aee
12 changed files with 658 additions and 330 deletions
+8 -4
View File
@@ -81,7 +81,7 @@ namespace demo
{
const static int ID = 1000;
struct request
struct request_t
{
std::string example_string_data;
some_test_data sub;
@@ -91,9 +91,10 @@ namespace demo
KV_SERIALIZE(sub)
END_KV_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<request_t> request;
struct response
struct response_t
{
bool m_success;
std::list<some_test_data> subs;
@@ -104,6 +105,7 @@ namespace demo
END_KV_SERIALIZE_MAP()
};
};
typedef epee::misc_utils::struct_init<response_t> response;
@@ -111,7 +113,7 @@ namespace demo
{
const static int ID = 1001;
struct request
struct request_t
{
std::string example_string_data2;
@@ -119,8 +121,9 @@ namespace demo
KV_SERIALIZE(example_string_data2)
END_KV_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<request_t> request;
struct response
struct response_t
{
bool m_success;
@@ -129,6 +132,7 @@ namespace demo
KV_SERIALIZE(m_success)
END_KV_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<response_t> response;
};
+5
View File
@@ -159,5 +159,10 @@ namespace misc_utils
return slc;
}
template<typename T> struct struct_init: T
{
struct_init(): T{} {}
};
}
}
@@ -18,6 +18,8 @@ namespace epee
epee::serialization::storage_entry id;
t_param params;
request(): id{}, params{} {}
BEGIN_KV_SERIALIZE_MAP()
KV_SERIALIZE(jsonrpc)
KV_SERIALIZE(id)
@@ -30,6 +32,9 @@ namespace epee
{
int64_t code;
std::string message;
error(): code(0) {}
BEGIN_KV_SERIALIZE_MAP()
KV_SERIALIZE(code)
KV_SERIALIZE(message)
@@ -55,6 +60,9 @@ namespace epee
t_param result;
epee::serialization::storage_entry id;
t_error error;
response(): result{}, id(), error{} {}
BEGIN_KV_SERIALIZE_MAP()
KV_SERIALIZE(jsonrpc)
KV_SERIALIZE(id)
@@ -69,6 +77,9 @@ namespace epee
std::string jsonrpc;
t_param result;
epee::serialization::storage_entry id;
response(): result{}, id{} {}
BEGIN_KV_SERIALIZE_MAP()
KV_SERIALIZE(jsonrpc)
KV_SERIALIZE(id)
@@ -82,6 +93,9 @@ namespace epee
std::string jsonrpc;
t_error error;
epee::serialization::storage_entry id;
response(): error{}, id{} {}
BEGIN_KV_SERIALIZE_MAP()
KV_SERIALIZE(jsonrpc)
KV_SERIALIZE(id)
+8 -5
View File
@@ -62,7 +62,7 @@ namespace tests
{
const static int ID = 1000;
struct request
struct request_t
{
std::string example_string_data;
@@ -75,9 +75,9 @@ namespace tests
SERIALIZE_T(sub)
END_NAMED_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<request_t> request;
struct response
struct response_t
{
bool m_success;
uint64_t example_id_data;
@@ -89,13 +89,14 @@ namespace tests
SERIALIZE_STL_CONTAINER_T(subs)
END_NAMED_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<response_t> response;
};
struct COMMAND_EXAMPLE_2
{
const static int ID = 1001;
struct request
struct request_t
{
std::string example_string_data2;
uint64_t example_id_data;
@@ -105,8 +106,9 @@ namespace tests
SERIALIZE_STL_ANSI_STRING(example_string_data2)
END_NAMED_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<request_t> request;
struct response
struct response_t
{
bool m_success;
uint64_t example_id_data;
@@ -116,6 +118,7 @@ namespace tests
SERIALIZE_POD(m_success)
END_NAMED_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<response_t> response;
};
typedef boost::uuids::uuid uuid;