Updated nlohmann::json to 3.10.5

Dieser Commit ist enthalten in:
Reinder Feenstra 2022-01-03 17:12:17 +01:00
Ursprung 8166e379c6
Commit f2457d95a9
6 geänderte Dateien mit 11865 neuen und 10180 gelöschten Zeilen

Datei anzeigen

@ -283,7 +283,7 @@ void Board::load(WorldLoader& loader, const nlohmann::json& data)
for(auto& [_, tileId] : objects.items())
{
static_cast<void>(_); // silence unused warning
if(auto tile = std::dynamic_pointer_cast<Tile>(loader.getObject(tileId)))
if(auto tile = std::dynamic_pointer_cast<Tile>(loader.getObject(tileId.get<std::string_view>())))
{
if(tile->width > 1 || tile->height > 1)
{

Datei anzeigen

@ -40,7 +40,7 @@ void AbstractObjectList::load(WorldLoader& loader, const nlohmann::json& data)
for(auto& [_, id] : objects.items())
{
static_cast<void>(_); // silence unused warning
if(ObjectPtr item = loader.getObject(id))
if(ObjectPtr item = loader.getObject(id.get<std::string_view>()))
items.emplace_back(std::move(item));
}
setItems(items);

Datei anzeigen

@ -101,7 +101,7 @@ void Object::load(WorldLoader& loader, const nlohmann::json& data)
else
{
if(value.is_string())
property->loadObject(loader.getObject(value));
property->loadObject(loader.getObject(value.get<std::string_view>()));
else if(value.is_null())
property->loadObject(ObjectPtr());
}

Datei anzeigen

@ -88,7 +88,7 @@ void OutputMap::load(WorldLoader& loader, const nlohmann::json& data)
for(auto& [_, id] : outputs.items())
{
static_cast<void>(_); // silence unused warning
if(auto output = std::dynamic_pointer_cast<Output>(loader.getObject(id)))
if(auto output = std::dynamic_pointer_cast<Output>(loader.getObject(id.get<std::string_view>())))
addOutput(std::move(output));
}
}

Datei anzeigen

@ -149,8 +149,8 @@ void WorldLoader::createObject(ObjectData& objectData)
{
assert(!objectData.object);
std::string_view classId = objectData.json["class_id"];
std::string_view id = objectData.json["id"];
std::string_view classId = objectData.json["class_id"].get<std::string_view>();
std::string_view id = objectData.json["id"].get<std::string_view>();
if(startsWith(classId, Interfaces::classIdPrefix))
objectData.object = Interfaces::create(m_world, classId, id);
@ -159,7 +159,7 @@ void WorldLoader::createObject(ObjectData& objectData)
else if(classId == DecoderFunction::classId)
{
// backwards compatibility < 0.1
const std::string_view decoderId = objectData.json["decoder"];
const std::string_view decoderId = objectData.json["decoder"].get<std::string_view>();
if(std::shared_ptr<Decoder> decoder = std::dynamic_pointer_cast<Decoder>(getObject(decoderId)))
{
auto f = std::make_shared<DecoderFunction>(*decoder, objectData.json["number"]);
@ -240,19 +240,19 @@ void WorldLoader::createObject(ObjectData& objectData)
else if(classId == "input.loconet")
{
objectData.object = Input::create(m_world, id);
objectData.json["interface"] = stripSuffix(objectData.json["loconet"], ".loconet");
objectData.json["interface"] = stripSuffix(objectData.json["loconet"].get<std::string_view>(), ".loconet");
objectData.json.erase("loconet");
}
else if(classId == "output.loconet")
{
objectData.object = Output::create(m_world, id);
objectData.json["interface"] = stripSuffix(objectData.json["loconet"], ".loconet");
objectData.json["interface"] = stripSuffix(objectData.json["loconet"].get<std::string_view>(), ".loconet");
objectData.json.erase("loconet");
}
else if(classId == "input.xpressnet")
{
objectData.object = Input::create(m_world, id);
objectData.json["interface"] = stripSuffix(objectData.json["xpressnet"], ".xpressnet");
objectData.json["interface"] = stripSuffix(objectData.json["xpressnet"].get<std::string_view>(), ".xpressnet");
objectData.json.erase("xpressnet");
}
else

Datei-Diff unterdrückt, da er zu groß ist Diff laden