Skip to content
API Documentation
BastionGuard™
anonymous_namespace{report_exporter.cpp} Namespace Reference

Functions

std::string escape_json (const std::string &s)
const char * kind_to_string (ResultKind kind)

Function Documentation

◆ escape_json()

std::string anonymous_namespace{report_exporter.cpp}::escape_json ( const std::string & s)

Definition at line 9 of file report_exporter.cpp.

9 {
10 std::ostringstream oss;
11 for (char c : s) {
12 switch (c) {
13 case '"': oss << "\\\""; break;
14 case '\\': oss << "\\\\"; break;
15 case '\b': oss << "\\b"; break;
16 case '\f': oss << "\\f"; break;
17 case '\n': oss << "\\n"; break;
18 case '\r': oss << "\\r"; break;
19 case '\t': oss << "\\t"; break;
20 default:
21 if (static_cast<unsigned char>(c) < 0x20) {
22 oss << "\\u";
23 const char* hex = "0123456789abcdef";
24 oss << '0' << '0'
25 << hex[(static_cast<unsigned char>(c) >> 4) & 0xF]
26 << hex[static_cast<unsigned char>(c) & 0xF];
27 } else {
28 oss << c;
29 }
30 }
31 }
32 return oss.str();
33 }

References escape_json().

Referenced by escape_json().

◆ kind_to_string()

const char * anonymous_namespace{report_exporter.cpp}::kind_to_string ( ResultKind kind)

Definition at line 35 of file report_exporter.cpp.

35 {
36 switch (kind) {
38 return "Partition";
40 return "LostPartitionCandidate";
42 return "FilesystemCandidate";
44 return "FilesystemVolume";
46 return "NtfsVolume";
48 return "NtfsMetadata";
50 return "Info";
52 return "Warning";
54 return "Error";
55 default:
56 return tr("Unknown");
57 }
58 }
const char * tr(const char *msgid)
Definition i18n.cpp:18
@ Partition
Definition models.hpp:8
@ LostPartitionCandidate
Definition models.hpp:9
@ NtfsMetadata
Definition models.hpp:13
@ FilesystemCandidate
Definition models.hpp:10
@ FilesystemVolume
Definition models.hpp:11

References Error, FilesystemCandidate, FilesystemVolume, Info, kind_to_string(), LostPartitionCandidate, NtfsMetadata, NtfsVolume, Partition, tr(), and Warning.

Referenced by kind_to_string().