You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by jk...@apache.org on 2017/09/21 17:04:04 UTC
thrift git commit: THRIFT-4287: Add c++ compiler no_skeleton flag
option Client: C++
Repository: thrift
Updated Branches:
refs/heads/master 69603709e -> 8506121b3
THRIFT-4287: Add c++ compiler no_skeleton flag option
Client: C++
This closes #1333
Project: http://git-wip-us.apache.org/repos/asf/thrift/repo
Commit: http://git-wip-us.apache.org/repos/asf/thrift/commit/8506121b
Tree: http://git-wip-us.apache.org/repos/asf/thrift/tree/8506121b
Diff: http://git-wip-us.apache.org/repos/asf/thrift/diff/8506121b
Branch: refs/heads/master
Commit: 8506121b3eaeca998ab562bd76ef8a1fbf2f36a4
Parents: 6960370
Author: oryahud <or...@gmail.com>
Authored: Fri Aug 18 05:51:44 2017 +0300
Committer: James E. King, III <jk...@apache.org>
Committed: Thu Sep 21 10:03:00 2017 -0700
----------------------------------------------------------------------
.../cpp/src/thrift/generate/t_cpp_generator.cc | 23 +++++++++++++++++---
1 file changed, 20 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/thrift/blob/8506121b/compiler/cpp/src/thrift/generate/t_cpp_generator.cc
----------------------------------------------------------------------
diff --git a/compiler/cpp/src/thrift/generate/t_cpp_generator.cc b/compiler/cpp/src/thrift/generate/t_cpp_generator.cc
index 9413b86..1c93957 100644
--- a/compiler/cpp/src/thrift/generate/t_cpp_generator.cc
+++ b/compiler/cpp/src/thrift/generate/t_cpp_generator.cc
@@ -65,6 +65,7 @@ public:
gen_templates_only_ = false;
gen_moveable_ = false;
gen_no_ostream_operators_ = false;
+ gen_no_skeleton_ = false;
for( iter = parsed_options.begin(); iter != parsed_options.end(); ++iter) {
if( iter->first.compare("pure_enums") == 0) {
@@ -84,6 +85,8 @@ public:
gen_moveable_ = true;
} else if ( iter->first.compare("no_ostream_operators") == 0) {
gen_no_ostream_operators_ = true;
+ } else if ( iter->first.compare("no_skeleton") == 0) {
+ gen_no_skeleton_ = true;
} else {
throw "unknown option cpp:" + iter->first;
}
@@ -338,6 +341,11 @@ private:
*/
bool gen_no_default_operators_;
+ /**
+ * True if we should generate skeleton.
+ */
+ bool gen_no_skeleton_;
+
/**
* Strings for namespace, computed once up front then used directly
*/
@@ -1769,9 +1777,13 @@ void t_cpp_generator::generate_service(t_service* tservice) {
generate_service_client(tservice, "");
generate_service_processor(tservice, "");
generate_service_multiface(tservice);
- generate_service_skeleton(tservice);
generate_service_client(tservice, "Concurrent");
+ // Generate skeleton
+ if (!gen_no_skeleton_) {
+ generate_service_skeleton(tservice);
+ }
+
// Generate all the cob components
if (gen_cob_style_) {
generate_service_interface(tservice, "CobCl");
@@ -1780,7 +1792,11 @@ void t_cpp_generator::generate_service(t_service* tservice) {
generate_service_null(tservice, "CobSv");
generate_service_client(tservice, "Cob");
generate_service_processor(tservice, "Cob");
- generate_service_async_skeleton(tservice);
+
+ if (!gen_no_skeleton_) {
+ generate_service_async_skeleton(tservice);
+ }
+
}
f_header_ << "#ifdef _MSC_VER\n"
@@ -4466,4 +4482,5 @@ THRIFT_REGISTER_GENERATOR(
" include_prefix: Use full include paths in generated files.\n"
" moveable_types: Generate move constructors and assignment operators.\n"
" no_ostream_operators:\n"
- " Omit generation of ostream definitions.\n")
+ " Omit generation of ostream definitions.\n"
+ " no_skeleton: Omits generation of skeleton.\n")