MCPcopy Create free account
hub / github.com/CppCXY/EmmyLuaCodeStyle / CreateFromJson

Function CreateFromJson

CodeFormatServer/src/Config/ClientConfig.cpp:3–25  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1#include "ClientConfig.h"
2
3InfoNode CreateFromJson(InfoTree &t, nlohmann::json json) {
4 if (json.is_object()) {
5 auto object = t.CreateObject();
6 for (auto &[k, v]: json.items()) {
7 object.AddChild(k, CreateFromJson(t, v));
8 }
9 return object;
10 } else if (json.is_array()) {
11 auto arr = t.CreateArray();
12 for (auto v: json) {
13 arr.AddChild(CreateFromJson(t, v));
14 }
15 return arr;
16 } else if (json.is_number()) {
17 return t.CreateNumber(json);
18 } else if (json.is_string()) {
19 return t.CreateString(json);
20 } else if (json.is_boolean()) {
21 return t.CreateBool(json);
22 } else {
23 return t.CreateNone();
24 }
25}
26
27void ClientConfig::Deserialize(nlohmann::json json) {
28 auto root = configTree.GetRoot();

Callers 1

DeserializeMethod · 0.85

Calls 7

CreateObjectMethod · 0.80
AddChildMethod · 0.80
CreateArrayMethod · 0.80
CreateNumberMethod · 0.80
CreateStringMethod · 0.80
CreateBoolMethod · 0.80
CreateNoneMethod · 0.80

Tested by

no test coverage detected