From 7d84a4914fe4784369d0490fb2b8a45684ed1f07 Mon Sep 17 00:00:00 2001 From: Raman Date: Mon, 4 Jul 2016 21:34:42 +0200 Subject: [PATCH] Update idl_gen_fbs.cpp --- src/idl_gen_fbs.cpp | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/idl_gen_fbs.cpp b/src/idl_gen_fbs.cpp index 00afe25..241a787 100644 --- a/src/idl_gen_fbs.cpp +++ b/src/idl_gen_fbs.cpp @@ -52,15 +52,18 @@ static void GenNameSpace(const Namespace &name_space, std::string *_schema, } // Generate a flatbuffer schema from the Parser's internal representation. -std::string GenerateFBS(const Parser &parser, const std::string &file_name) { - // Proto namespaces may clash with table names, so we have to prefix all: - for (auto it = parser.namespaces_.begin(); it != parser.namespaces_.end(); - ++it) { - for (auto comp = (*it)->components.begin(); comp != (*it)->components.end(); - ++comp) { - (*comp) = "_" + (*comp); - } - } +std::string GenerateFBS(const Parser &parser, const std::string &file_name, const bool &escape_proto_identifiers) { + // Proto namespaces may clash with table names, so we have to prefix all: + + if (!escape_proto_identifiers) { + for (auto it = parser.namespaces_.begin(); it != parser.namespaces_.end(); + ++it) { + for (auto comp = (*it)->components.begin(); comp != (*it)->components.end(); + ++comp) { + (*comp) = "_" + (*comp); + } + } + } std::string schema; schema += "// Generated from " + file_name + ".proto\n\n"; @@ -119,9 +122,10 @@ std::string GenerateFBS(const Parser &parser, const std::string &file_name) { bool GenerateFBS(const Parser &parser, const std::string &path, - const std::string &file_name) { + const std::string &file_name, + const bool &escape_proto_identifiers) { return SaveFile((path + file_name + ".fbs").c_str(), - GenerateFBS(parser, file_name), false); + GenerateFBS(parser, file_name, escape_proto_identifiers), false); } } // namespace flatbuffers -- 2.7.4