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/25 03:33:36 UTC
thrift git commit: THRIFT-4334: Fix perl indentation for default
attribute values of array / hashes / objects Client: Perl
Repository: thrift
Updated Branches:
refs/heads/master 4bd3682c7 -> a17ef79e8
THRIFT-4334: Fix perl indentation for default attribute values of
array / hashes / objects
Client: Perl
This closes #1373
Project: http://git-wip-us.apache.org/repos/asf/thrift/repo
Commit: http://git-wip-us.apache.org/repos/asf/thrift/commit/a17ef79e
Tree: http://git-wip-us.apache.org/repos/asf/thrift/tree/a17ef79e
Diff: http://git-wip-us.apache.org/repos/asf/thrift/diff/a17ef79e
Branch: refs/heads/master
Commit: a17ef79e8f737b16349ed2155f938bf612303bc3
Parents: 4bd3682
Author: Brian Forbis <bf...@athenahealth.com>
Authored: Sat Sep 23 01:06:08 2017 -0400
Committer: James E. King, III <jk...@apache.org>
Committed: Sun Sep 24 20:32:56 2017 -0700
----------------------------------------------------------------------
.../cpp/src/thrift/generate/t_perl_generator.cc | 21 ++++++++++++--------
1 file changed, 13 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/thrift/blob/a17ef79e/compiler/cpp/src/thrift/generate/t_perl_generator.cc
----------------------------------------------------------------------
diff --git a/compiler/cpp/src/thrift/generate/t_perl_generator.cc b/compiler/cpp/src/thrift/generate/t_perl_generator.cc
index 12b8bfc..0bdbb05 100644
--- a/compiler/cpp/src/thrift/generate/t_perl_generator.cc
+++ b/compiler/cpp/src/thrift/generate/t_perl_generator.cc
@@ -356,6 +356,7 @@ string t_perl_generator::render_const_value(t_type* type, t_const_value* value)
} else if (type->is_struct() || type->is_xception()) {
out << "new " << perl_namespace(type->get_program()) << type->get_name() << "({" << endl;
indent_up();
+
const vector<t_field*>& fields = ((t_struct*)type)->get_members();
vector<t_field*>::const_iterator f_iter;
const map<t_const_value*, t_const_value*>& val = value->get_map();
@@ -370,29 +371,30 @@ string t_perl_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();
}
- out << render_const_value(g_type_string, v_iter->first);
+ indent(out) << render_const_value(g_type_string, v_iter->first);
out << " => ";
out << render_const_value(field_type, v_iter->second);
out << ",";
out << endl;
}
-
- out << "})";
+ indent_down();
+ indent(out) << "})";
} else if (type->is_map()) {
t_type* ktype = ((t_map*)type)->get_key_type();
t_type* vtype = ((t_map*)type)->get_val_type();
out << "{" << endl;
+ indent_up();
const map<t_const_value*, t_const_value*>& val = value->get_map();
map<t_const_value*, t_const_value*>::const_iterator v_iter;
for (v_iter = val.begin(); v_iter != val.end(); ++v_iter) {
- out << render_const_value(ktype, v_iter->first);
+ indent(out) << render_const_value(ktype, v_iter->first);
out << " => ";
out << render_const_value(vtype, v_iter->second);
out << "," << endl;
}
-
- out << "}";
+ indent_down();
+ indent(out) << "}";
} else if (type->is_list() || type->is_set()) {
t_type* etype;
if (type->is_list()) {
@@ -401,17 +403,20 @@ string t_perl_generator::render_const_value(t_type* type, t_const_value* value)
etype = ((t_set*)type)->get_elem_type();
}
out << "[" << endl;
+ indent_up();
+
const vector<t_const_value*>& val = value->get_list();
vector<t_const_value*>::const_iterator v_iter;
for (v_iter = val.begin(); v_iter != val.end(); ++v_iter) {
- out << render_const_value(etype, *v_iter);
+ indent(out) << render_const_value(etype, *v_iter);
if (type->is_set()) {
out << " => 1";
}
out << "," << endl;
}
- out << "]";
+ indent_down();
+ indent(out) << "]";
}
return out.str();
}