added message dumping for -parse option if running from console
This commit is contained in:
@@ -14,15 +14,13 @@
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <utility>
|
||||
#include <string>
|
||||
#include <assert.h>
|
||||
#include <locale>
|
||||
#include <algorithm>
|
||||
#include <thread>
|
||||
#include <cstdint>
|
||||
|
||||
#include "utils.h"
|
||||
#include "errors.h"
|
||||
#include "utils.h"
|
||||
#include "version.h"
|
||||
|
||||
#include "graph_loops.h"
|
||||
@@ -1737,4 +1735,38 @@ void copyStringToShort(short*& result, const string& resVal, bool withEnd)
|
||||
|
||||
if (withEnd)
|
||||
result[resVal.size()] = (short)'\0';
|
||||
}
|
||||
|
||||
void dumpMessages(bool inCatch, const map<string, vector<Messages>>& messages, const char *vis_path)
|
||||
{
|
||||
json byFileArray = json::array();
|
||||
for (auto& byFile : messages)
|
||||
{
|
||||
json inFile;
|
||||
inFile["file"] = byFile.first;
|
||||
|
||||
json messages = json::array();
|
||||
for (auto& message : byFile.second)
|
||||
{
|
||||
if (inCatch)
|
||||
message.print(byFile.first);
|
||||
messages.push_back(message.toJson());
|
||||
}
|
||||
inFile["messages"] = messages;
|
||||
byFileArray.push_back(inFile);
|
||||
}
|
||||
json allMessages;
|
||||
allMessages["allMessages"] = byFileArray;
|
||||
|
||||
const string dump = allMessages.dump().c_str();
|
||||
|
||||
if (dump.size())
|
||||
{
|
||||
FILE* outF = fopen((string(vis_path) + "/error_messages.json").c_str(), "w");
|
||||
if (outF)
|
||||
{
|
||||
fprintf(outF, "%s", dump.c_str());
|
||||
fclose(outF);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user