Optimizing FB schema:

* Replaced Response union with nullable fields
* "Ok" code replaced with a boolean and a separate structure for a error code and message.
* Inlined geometry, thus removing one layer of indirection.
This commit is contained in:
Denis Chaplygin
2019-08-08 11:46:25 +03:00
parent affa8a4653
commit 13287d9970
7 changed files with 335 additions and 605 deletions
+7 -4
View File
@@ -75,10 +75,13 @@ class BasePlugin
json_result.values["message"] = message;
};
void operator()(flatbuffers::FlatBufferBuilder& fb_result) {
osrm::engine::api::fbresult::FBResultBuilder error(fb_result);
error.add_code(fb_result.CreateString(code));
error.add_message(fb_result.CreateString(message));
error.add_response_type(osrm::engine::api::fbresult::ServiceResponse::ServiceResponse_NONE);
api::fbresult::FBResultBuilder error(fb_result);
error.add_error(true);
api::fbresult::ErrorBuilder codeBuilder(fb_result);
codeBuilder.add_code(fb_result.CreateString(code));
codeBuilder.add_message(fb_result.CreateString(message));
error.add_code(codeBuilder.Finish());
fb_result.Finish(error.Finish());
};
void operator()(std::string& str_result) {