Make BaseVersion const-correct in order to remove const-cast from Meta::Version

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
TheKodeToad
2025-09-17 10:30:00 +01:00
parent b7b06c0e48
commit 5ef61aa445
7 changed files with 33 additions and 33 deletions

View File

@@ -21,7 +21,7 @@
#include "BaseVersion.h"
#include "StringUtils.h"
bool JavaInstall::operator<(const JavaInstall& rhs)
bool JavaInstall::operator<(const JavaInstall& rhs) const
{
auto archCompare = StringUtils::naturalCompare(arch, rhs.arch, Qt::CaseInsensitive);
if (archCompare != 0)
@@ -35,17 +35,17 @@ bool JavaInstall::operator<(const JavaInstall& rhs)
return StringUtils::naturalCompare(path, rhs.path, Qt::CaseInsensitive) < 0;
}
bool JavaInstall::operator==(const JavaInstall& rhs)
bool JavaInstall::operator==(const JavaInstall& rhs) const
{
return arch == rhs.arch && id == rhs.id && path == rhs.path;
}
bool JavaInstall::operator>(const JavaInstall& rhs)
bool JavaInstall::operator>(const JavaInstall& rhs) const
{
return (!operator<(rhs)) && (!operator==(rhs));
}
bool JavaInstall::operator<(BaseVersion& a)
bool JavaInstall::operator<(BaseVersion& a) const
{
try {
return operator<(dynamic_cast<JavaInstall&>(a));
@@ -54,7 +54,7 @@ bool JavaInstall::operator<(BaseVersion& a)
}
}
bool JavaInstall::operator>(BaseVersion& a)
bool JavaInstall::operator>(BaseVersion& a) const
{
try {
return operator>(dynamic_cast<JavaInstall&>(a));

View File

@@ -24,17 +24,17 @@
struct JavaInstall : public BaseVersion {
JavaInstall() {}
JavaInstall(QString id, QString arch, QString path) : id(id), arch(arch), path(path) {}
virtual QString descriptor() override { return id.toString(); }
virtual QString descriptor() const override { return id.toString(); }
virtual QString name() override { return id.toString(); }
virtual QString name() const override { return id.toString(); }
virtual QString typeString() const override { return arch; }
virtual bool operator<(BaseVersion& a) override;
virtual bool operator>(BaseVersion& a) override;
bool operator<(const JavaInstall& rhs);
bool operator==(const JavaInstall& rhs);
bool operator>(const JavaInstall& rhs);
virtual bool operator<(BaseVersion& a) const override;
virtual bool operator>(BaseVersion& a) const override;
bool operator<(const JavaInstall& rhs) const;
bool operator==(const JavaInstall& rhs) const;
bool operator>(const JavaInstall& rhs) const;
JavaVersion id;
QString arch;

View File

@@ -78,7 +78,7 @@ MetadataPtr parseJavaMeta(const QJsonObject& in)
return meta;
}
bool Metadata::operator<(const Metadata& rhs)
bool Metadata::operator<(const Metadata& rhs) const
{
auto id = version;
if (id < rhs.version) {
@@ -97,17 +97,17 @@ bool Metadata::operator<(const Metadata& rhs)
return StringUtils::naturalCompare(m_name, rhs.m_name, Qt::CaseInsensitive) < 0;
}
bool Metadata::operator==(const Metadata& rhs)
bool Metadata::operator==(const Metadata& rhs) const
{
return version == rhs.version && m_name == rhs.m_name;
}
bool Metadata::operator>(const Metadata& rhs)
bool Metadata::operator>(const Metadata& rhs) const
{
return (!operator<(rhs)) && (!operator==(rhs));
}
bool Metadata::operator<(BaseVersion& a)
bool Metadata::operator<(BaseVersion& a) const
{
try {
return operator<(dynamic_cast<Metadata&>(a));
@@ -116,7 +116,7 @@ bool Metadata::operator<(BaseVersion& a)
}
}
bool Metadata::operator>(BaseVersion& a)
bool Metadata::operator>(BaseVersion& a) const
{
try {
return operator>(dynamic_cast<Metadata&>(a));

View File

@@ -32,17 +32,17 @@ enum class DownloadType { Manifest, Archive, Unknown };
class Metadata : public BaseVersion {
public:
virtual QString descriptor() override { return version.toString(); }
virtual QString descriptor() const override { return version.toString(); }
virtual QString name() override { return m_name; }
virtual QString name() const override { return m_name; }
virtual QString typeString() const override { return vendor; }
virtual bool operator<(BaseVersion& a) override;
virtual bool operator>(BaseVersion& a) override;
bool operator<(const Metadata& rhs);
bool operator==(const Metadata& rhs);
bool operator>(const Metadata& rhs);
virtual bool operator<(BaseVersion& a) const override;
virtual bool operator>(BaseVersion& a) const override;
bool operator<(const Metadata& rhs) const;
bool operator==(const Metadata& rhs) const;
bool operator>(const Metadata& rhs) const;
QString m_name;
QString vendor;