From 4704d4383c6e50a3231f0e5bc1fe866727bf23d4 Mon Sep 17 00:00:00 2001 From: David Reiss Date: Sun, 1 Feb 2009 00:42:10 +0000 Subject: [PATCH] THRIFT-285. python: Don't generate _result structs for async functions git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739668 13f79535-47bb-0310-9956-ffa450edef68 --- compiler/cpp/src/generate/t_py_generator.cc | 24 +++++++++++---------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/compiler/cpp/src/generate/t_py_generator.cc b/compiler/cpp/src/generate/t_py_generator.cc index 0218394b..f0f076bf 100644 --- a/compiler/cpp/src/generate/t_py_generator.cc +++ b/compiler/cpp/src/generate/t_py_generator.cc @@ -850,19 +850,21 @@ void t_py_generator::generate_service_helpers(t_service* tservice) { * @param tfunction The function */ void t_py_generator::generate_py_function_helpers(t_function* tfunction) { - t_struct result(program_, tfunction->get_name() + "_result"); - t_field success(tfunction->get_returntype(), "success", 0); - if (!tfunction->get_returntype()->is_void()) { - result.append(&success); - } + if (!tfunction->is_async()) { + t_struct result(program_, tfunction->get_name() + "_result"); + t_field success(tfunction->get_returntype(), "success", 0); + if (!tfunction->get_returntype()->is_void()) { + result.append(&success); + } - t_struct* xs = tfunction->get_xceptions(); - const vector& fields = xs->get_members(); - vector::const_iterator f_iter; - for (f_iter = fields.begin(); f_iter != fields.end(); ++f_iter) { - result.append(*f_iter); + t_struct* xs = tfunction->get_xceptions(); + const vector& fields = xs->get_members(); + vector::const_iterator f_iter; + for (f_iter = fields.begin(); f_iter != fields.end(); ++f_iter) { + result.append(*f_iter); + } + generate_py_struct_definition(f_service_, &result, false, true); } - generate_py_struct_definition(f_service_, &result, false, true); } /** -- 2.17.1