From 6461d56d025893581fd9b06487b7c4788af3c0ed Mon Sep 17 00:00:00 2001 From: T Jake Luciani Date: Wed, 22 Sep 2010 02:33:06 +0000 Subject: [PATCH] THRIFT-911: fix for trailing commas in sets, lists, maps, consts git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@999728 13f79535-47bb-0310-9956-ffa450edef68 --- compiler/cpp/src/generate/t_js_generator.cc | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/compiler/cpp/src/generate/t_js_generator.cc b/compiler/cpp/src/generate/t_js_generator.cc index 79be1252..bc4242ce 100644 --- a/compiler/cpp/src/generate/t_js_generator.cc +++ b/compiler/cpp/src/generate/t_js_generator.cc @@ -360,10 +360,11 @@ string t_js_generator::render_const_value(t_type* type, t_const_value* value) { if (field_type == NULL) { throw "type error: " + type->get_name() + " has no field " + v_iter->first->get_string(); } + if (v_iter != val.begin()) + out << ","; out << render_const_value(g_type_string, v_iter->first); out << " : "; out << render_const_value(field_type, v_iter->second); - out << ","; } out << "})"; @@ -380,15 +381,16 @@ string t_js_generator::render_const_value(t_type* type, t_const_value* value) { const map& val = value->get_map(); map::const_iterator v_iter; for (v_iter = val.begin(); v_iter != val.end(); ++v_iter) { + if (v_iter != val.begin()) + out << "," << endl; out << render_const_value(ktype, v_iter->first); out << " : "; out << render_const_value(vtype, v_iter->second); - out << "," << endl; } - out << "}"; + out << endl << "}"; } else if (type->is_list() || type->is_set()) { t_type* etype; if (type->is_list()) { @@ -400,9 +402,9 @@ string t_js_generator::render_const_value(t_type* type, t_const_value* value) { const vector& val = value->get_list(); vector::const_iterator v_iter; for (v_iter = val.begin(); v_iter != val.end(); ++v_iter) { - + if (v_iter != val.begin()) + out << ","; out << render_const_value(etype, *v_iter); - out << ","; } out << "]"; } -- 2.17.1