MCPcopy Create free account
hub / github.com/FreesmTeam/FreesmLauncher / parseVersionListInternal

Function parseVersionListInternal

launcher/meta/JsonFormat.cpp:78–95  ·  view source on GitHub ↗

Version list / package

Source from the content-addressed store, hash-verified

76
77// Version list / package
78static VersionList::Ptr parseVersionListInternal(const QJsonObject& obj)
79{
80 const QString uid = requireString(obj, "uid");
81
82 const QVector<QJsonObject> versionsRaw = requireIsArrayOf<QJsonObject>(obj, "versions");
83 QVector<Version::Ptr> versions;
84 versions.reserve(versionsRaw.size());
85 std::transform(versionsRaw.begin(), versionsRaw.end(), std::back_inserter(versions), [uid](const QJsonObject& vObj) {
86 auto version = parseCommonVersion(uid, vObj);
87 version->setProvidesRecommendations();
88 return version;
89 });
90
91 VersionList::Ptr list = std::make_shared<VersionList>(uid);
92 list->setName(ensureString(obj, "name", QString()));
93 list->setVersions(versions);
94 return list;
95}
96
97MetadataVersion parseFormatVersion(const QJsonObject& obj, bool required)
98{

Callers 1

parseVersionListFunction · 0.85

Calls 6

parseCommonVersionFunction · 0.85
QStringClass · 0.85
setVersionsMethod · 0.80
sizeMethod · 0.45
setNameMethod · 0.45

Tested by

no test coverage detected