QmlJS: Add ComponentVersion class to simplify dealing with versions.

This commit is contained in:
Christian Kamm
2010-05-20 15:41:30 +02:00
parent 0d5d6344bd
commit ea5ca79900
5 changed files with 93 additions and 9 deletions

View File

@@ -0,0 +1,50 @@
#include "qmljscomponentversion.h"
using namespace QmlJS;
const int ComponentVersion::NoVersion = -1;
ComponentVersion::ComponentVersion()
: _major(NoVersion), _minor(NoVersion)
{
}
ComponentVersion::ComponentVersion(int major, int minor)
: _major(major), _minor(minor)
{
}
ComponentVersion::~ComponentVersion()
{
}
bool ComponentVersion::isValid() const
{
return _major >= 0 && _minor >= 0;
}
namespace QmlJS {
bool operator<(const ComponentVersion &lhs, const ComponentVersion &rhs)
{
return lhs.major() < rhs.major()
|| (lhs.major() == rhs.major() && lhs.minor() < rhs.minor());
}
bool operator<=(const ComponentVersion &lhs, const ComponentVersion &rhs)
{
return lhs.major() < rhs.major()
|| (lhs.major() == rhs.major() && lhs.minor() <= rhs.minor());
}
bool operator==(const ComponentVersion &lhs, const ComponentVersion &rhs)
{
return lhs.major() == rhs.major() && lhs.minor() == rhs.minor();
}
bool operator!=(const ComponentVersion &lhs, const ComponentVersion &rhs)
{
return !(lhs == rhs);
}
}