mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2026-07-07 05:46:58 +03:00
wrap enum
This should improve the boilerplate needed to define enums with methods Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
parent
323c25d83b
commit
c8f23c691a
22 changed files with 192 additions and 192 deletions
|
|
@ -30,10 +30,6 @@ ModLoaderType operator|(ModLoaderType lhs, ModLoaderType rhs)
|
|||
return static_cast<ModLoaderType>(static_cast<std::uint16_t>(lhs) | static_cast<std::uint16_t>(rhs));
|
||||
}
|
||||
|
||||
static const QMap<QString, IndexedVersionType> s_indexed_version_type_names = { { "release", IndexedVersionType::Release },
|
||||
{ "beta", IndexedVersionType::Beta },
|
||||
{ "alpha", IndexedVersionType::Alpha } };
|
||||
|
||||
static const QList<ModLoaderType> loaderList = { NeoForge, Forge, Cauldron, LiteLoader, Quilt, Fabric,
|
||||
Babric, BTA, LegacyFabric, Ornithe, Rift };
|
||||
|
||||
|
|
@ -48,16 +44,6 @@ QList<ModLoaderType> modLoaderTypesToList(ModLoaderTypes flags)
|
|||
return flagList;
|
||||
}
|
||||
|
||||
QString IndexedVersionType::toString() const
|
||||
{
|
||||
return s_indexed_version_type_names.key(m_type, "unknown");
|
||||
}
|
||||
|
||||
IndexedVersionType IndexedVersionType::fromString(const QString& type)
|
||||
{
|
||||
return s_indexed_version_type_names.value(type, IndexedVersionType::Unknown);
|
||||
}
|
||||
|
||||
const char* ProviderCapabilities::name(ResourceProvider p)
|
||||
{
|
||||
switch (p) {
|
||||
|
|
@ -158,65 +144,4 @@ auto getModLoaderFromString(QString type) -> ModLoaderType
|
|||
return {};
|
||||
}
|
||||
|
||||
QString SideUtils::toString(Side side)
|
||||
{
|
||||
switch (side) {
|
||||
case Side::ClientSide:
|
||||
return "client";
|
||||
case Side::ServerSide:
|
||||
return "server";
|
||||
case Side::UniversalSide:
|
||||
return "both";
|
||||
case Side::NoSide:
|
||||
break;
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
Side SideUtils::fromString(QString side)
|
||||
{
|
||||
if (side == "client")
|
||||
return Side::ClientSide;
|
||||
if (side == "server")
|
||||
return Side::ServerSide;
|
||||
if (side == "both")
|
||||
return Side::UniversalSide;
|
||||
return Side::UniversalSide;
|
||||
}
|
||||
|
||||
QString DependencyTypeUtils::toString(DependencyType type)
|
||||
{
|
||||
switch (type) {
|
||||
case DependencyType::REQUIRED:
|
||||
return "REQUIRED";
|
||||
case DependencyType::OPTIONAL:
|
||||
return "OPTIONAL";
|
||||
case DependencyType::INCOMPATIBLE:
|
||||
return "INCOMPATIBLE";
|
||||
case DependencyType::EMBEDDED:
|
||||
return "EMBEDDED";
|
||||
case DependencyType::TOOL:
|
||||
return "TOOL";
|
||||
case DependencyType::INCLUDE:
|
||||
return "INCLUDE";
|
||||
case DependencyType::UNKNOWN:
|
||||
return "UNKNOWN";
|
||||
}
|
||||
return "UNKNOWN";
|
||||
}
|
||||
|
||||
DependencyType DependencyTypeUtils::fromString(const QString& str)
|
||||
{
|
||||
static const QHash<QString, DependencyType> map = {
|
||||
{ "REQUIRED", DependencyType::REQUIRED },
|
||||
{ "OPTIONAL", DependencyType::OPTIONAL },
|
||||
{ "INCOMPATIBLE", DependencyType::INCOMPATIBLE },
|
||||
{ "EMBEDDED", DependencyType::EMBEDDED },
|
||||
{ "TOOL", DependencyType::TOOL },
|
||||
{ "INCLUDE", DependencyType::INCLUDE },
|
||||
{ "UNKNOWN", DependencyType::UNKNOWN },
|
||||
};
|
||||
|
||||
return map.value(str.toUpper(), DependencyType::UNKNOWN);
|
||||
}
|
||||
} // namespace ModPlatform
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue