preprocessor: cleanup writing JSON to standardout
parent
955fb4f003
commit
3597a41a4f
38
ModFile.cc
38
ModFile.cc
|
@ -1270,6 +1270,9 @@ ModFile::writeJsonOutput(const string &basename, JsonOutputPointType json, JsonF
|
||||||
if (json == parsing || json == checkpass)
|
if (json == parsing || json == checkpass)
|
||||||
symbol_table.freeze();
|
symbol_table.freeze();
|
||||||
|
|
||||||
|
if (json_output_mode == standardout)
|
||||||
|
cout << "{" << endl;
|
||||||
|
|
||||||
writeJsonOutputParsingCheck(basename, json_output_mode, json == transformpass, json == computingpass);
|
writeJsonOutputParsingCheck(basename, json_output_mode, json == transformpass, json == computingpass);
|
||||||
|
|
||||||
if (json == parsing || json == checkpass)
|
if (json == parsing || json == checkpass)
|
||||||
|
@ -1278,6 +1281,9 @@ ModFile::writeJsonOutput(const string &basename, JsonOutputPointType json, JsonF
|
||||||
if (json == computingpass)
|
if (json == computingpass)
|
||||||
writeJsonComputingPassOutput(basename, json_output_mode, jsonderivsimple);
|
writeJsonComputingPassOutput(basename, json_output_mode, jsonderivsimple);
|
||||||
|
|
||||||
|
if (json_output_mode == standardout)
|
||||||
|
cout << "}" << endl;
|
||||||
|
|
||||||
switch (json)
|
switch (json)
|
||||||
{
|
{
|
||||||
case parsing:
|
case parsing:
|
||||||
|
@ -1333,7 +1339,7 @@ ModFile::writeJsonOutputParsingCheck(const string &basename, JsonFileOutputType
|
||||||
|
|
||||||
ostringstream original_model_output;
|
ostringstream original_model_output;
|
||||||
original_model_output << "";
|
original_model_output << "";
|
||||||
if (transformpass)
|
if (transformpass || computingpass)
|
||||||
{
|
{
|
||||||
original_model_output << "{";
|
original_model_output << "{";
|
||||||
original_model.writeJsonOriginalModelOutput(original_model_output);
|
original_model.writeJsonOriginalModelOutput(original_model_output);
|
||||||
|
@ -1342,9 +1348,13 @@ ModFile::writeJsonOutputParsingCheck(const string &basename, JsonFileOutputType
|
||||||
|
|
||||||
if (json_output_mode == standardout)
|
if (json_output_mode == standardout)
|
||||||
{
|
{
|
||||||
|
if (transformpass || computingpass)
|
||||||
|
cout << "\"transformed_model\": ";
|
||||||
|
else
|
||||||
|
cout << "\"model\": ";
|
||||||
cout << output.str();
|
cout << output.str();
|
||||||
if (!original_model_output.str().empty())
|
if (!original_model_output.str().empty())
|
||||||
cout << "," << original_model_output.str();
|
cout << ", \"original_model\": " << original_model_output.str();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1408,11 +1418,6 @@ ModFile::writeJsonComputingPassOutput(const string &basename, JsonFileOutputType
|
||||||
dynamic_model.writeJsonComputingPassOutput(dynamic_output, true);
|
dynamic_model.writeJsonComputingPassOutput(dynamic_output, true);
|
||||||
dynamic_output << "}" << endl;
|
dynamic_output << "}" << endl;
|
||||||
|
|
||||||
ostringstream original_model_output;
|
|
||||||
original_model_output << "{";
|
|
||||||
original_model.writeJsonOriginalModelOutput(original_model_output);
|
|
||||||
original_model_output << "}" << endl;
|
|
||||||
|
|
||||||
ostringstream tmp_out, static_paramsd_output, static_paramsd_simple_output;
|
ostringstream tmp_out, static_paramsd_output, static_paramsd_simple_output;
|
||||||
tmp_out << "";
|
tmp_out << "";
|
||||||
static_paramsd_output << "";
|
static_paramsd_output << "";
|
||||||
|
@ -1453,26 +1458,25 @@ ModFile::writeJsonComputingPassOutput(const string &basename, JsonFileOutputType
|
||||||
|
|
||||||
if (json_output_mode == standardout)
|
if (json_output_mode == standardout)
|
||||||
{
|
{
|
||||||
cout << original_model_output.str() << endl
|
cout << ", \"static_model\": " << static_output.str() << endl
|
||||||
<< static_output.str() << endl
|
<< ", \"dynamic_model\": " << dynamic_output.str() << endl;
|
||||||
<< dynamic_output.str() << endl;
|
|
||||||
|
|
||||||
if (!static_paramsd_output.str().empty())
|
if (!static_paramsd_output.str().empty())
|
||||||
cout << static_paramsd_output.str() << endl;
|
cout << ", \"static_params_deriv\": " << static_paramsd_output.str() << endl;
|
||||||
|
|
||||||
if (!dynamic_paramsd_output.str().empty())
|
if (!dynamic_paramsd_output.str().empty())
|
||||||
cout << dynamic_paramsd_output.str() << endl;
|
cout << ", \"dynamic_params_deriv\":" << dynamic_paramsd_output.str() << endl;
|
||||||
|
|
||||||
if (jsonderivsimple)
|
if (jsonderivsimple)
|
||||||
{
|
{
|
||||||
cout << static_simple_output.str() << endl
|
cout << ", \"static_model_simple\": " << static_simple_output.str() << endl
|
||||||
<< dynamic_simple_output.str() << endl;
|
<< ", \"dynamic_model_simple\": " << dynamic_simple_output.str() << endl;
|
||||||
|
|
||||||
if (!static_paramsd_simple_output.str().empty())
|
if (!static_paramsd_simple_output.str().empty())
|
||||||
cout << static_paramsd_simple_output.str() << endl;
|
cout << "," << static_paramsd_simple_output.str() << endl;
|
||||||
|
|
||||||
if (!dynamic_paramsd_simple_output.str().empty())
|
if (!dynamic_paramsd_simple_output.str().empty())
|
||||||
cout << dynamic_paramsd_simple_output.str() << endl;
|
cout << "," << dynamic_paramsd_simple_output.str() << endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1484,11 +1488,9 @@ ModFile::writeJsonComputingPassOutput(const string &basename, JsonFileOutputType
|
||||||
}
|
}
|
||||||
|
|
||||||
string fname_original, fname_static, fname_dynamic;
|
string fname_original, fname_static, fname_dynamic;
|
||||||
fname_original = basename + "_original.json";
|
|
||||||
fname_static = basename + "_static.json";
|
fname_static = basename + "_static.json";
|
||||||
fname_dynamic = basename + "_dynamic.json";
|
fname_dynamic = basename + "_dynamic.json";
|
||||||
|
|
||||||
writeJsonFileHelper(fname_original, original_model_output);
|
|
||||||
writeJsonFileHelper(fname_static, static_output);
|
writeJsonFileHelper(fname_static, static_output);
|
||||||
writeJsonFileHelper(fname_dynamic, dynamic_output);
|
writeJsonFileHelper(fname_dynamic, dynamic_output);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue