diff options
| author | ruki <[email protected]> | 2018-10-09 22:56:09 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2018-10-09 11:37:00 +0800 |
| commit | 73ce4108bed43f4844be5b7a9fb0d25c612cb4ff (patch) | |
| tree | dd86387184c66f41a92aba3e6ad58d038f2d8119 /xmake/core/base/semver.lua | |
| parent | aecf4e3f816fcd2432522f1a6d337df5a1257739 (diff) | |
improve winos.version comparator
Diffstat (limited to 'xmake/core/base/semver.lua')
| -rw-r--r-- | xmake/core/base/semver.lua | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/xmake/core/base/semver.lua b/xmake/core/base/semver.lua index d2c094da5..b52ac5769 100644 --- a/xmake/core/base/semver.lua +++ b/xmake/core/base/semver.lua @@ -67,54 +67,54 @@ end -- v1 == v2 (str/ver)? function _instance:eq(version) - return _instance.__eq(self, version) + if type(version) == "string" then + return semver.compare(self:rawstr(), version) == 0 + elseif type(version) == "table" then + return semver.compare(self:rawstr(), version:rawstr()) == 0 + end end -- v1 < v2 (str/ver)? function _instance:lt(version) - return _instance.__lt(self, version) + if type(version) == "string" then + return semver.compare(self:rawstr(), version) < 0 + elseif type(version) == "table" then + return semver.compare(self:rawstr(), version:rawstr()) < 0 + end end -- v1 <= v2 (str/ver)? function _instance:le(version) - return _instance.__le(self, version) + if type(version) == "string" then + return semver.compare(self:rawstr(), version) <= 0 + elseif type(version) == "table" then + return semver.compare(self:rawstr(), version:rawstr()) <= 0 + end end -- v1 > v2 (str/ver)? function _instance:gt(version) - return not _instance.__le(self, version) + return not self:le(version) end -- v1 >= v2 (str/ver)? function _instance:ge(version) - return not _instance.__lt(self, version) + return not self:lt(version) end -- v1 == v2? function _instance:__eq(version) - if type(version) == "string" then - return semver.compare(self:rawstr(), version) == 0 - elseif type(version) == "table" then - return semver.compare(self:rawstr(), version:rawstr()) == 0 - end + return self:eq(version) end -- v1 < v2? function _instance:__lt(version) - if type(version) == "string" then - return semver.compare(self:rawstr(), version) < 0 - elseif type(version) == "table" then - return semver.compare(self:rawstr(), version:rawstr()) < 0 - end + return self:lt(version) end -- v1 <= v2? function _instance:__le(version) - if type(version) == "string" then - return semver.compare(self:rawstr(), version) <= 0 - elseif type(version) == "table" then - return semver.compare(self:rawstr(), version:rawstr()) <= 0 - end + return self:le(version) end -- new an instance |
