in src/native/tools/dumpdiff/dumpdiff.cpp [145:201]
int dump_recipe(Json::Value &recipe, std::ostream &ostream, Json::StreamWriter *writer)
{
auto members = recipe.getMemberNames();
std::set<std::string> member_set(members.begin(), members.end());
bool first = true;
ostream << "{";
if (member_set.contains("Name"))
{
first = false;
ostream << "\"Name\":";
writer->write(recipe["Name"], &ostream);
}
if (member_set.contains("Result"))
{
if (!first)
{
ostream << ",";
}
first = false;
ostream << "\"Result\":";
writer->write(recipe["Result"], &ostream);
}
if (member_set.contains("NumberIngredients"))
{
if (!first)
{
ostream << ",";
}
first = false;
ostream << "\"NumberIngredients\":";
writer->write(recipe["NumberIngredients"], &ostream);
}
if (member_set.contains("ItemIngredients"))
{
if (!first)
{
ostream << ",";
}
first = false;
ostream << "\"ItemIngredients\":";
writer->write(recipe["ItemIngredients"], &ostream);
}
ostream << "}";
return 0;
}