summaryrefslogtreecommitdiffstats
path: root/lua/mason-core/semver.lua
blob: 4e45567d8919dde026aa1390ff69a7beeb752174 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
local Result = require "mason-core.result"
local semver = require "mason-vendor.semver"

local M = {}

---@param version string
---@return Semver
function M.new(version)
    version = version:gsub("^v", "")
    return semver(version)
end

---@param version string
---@return Result # Result<Semver>
function M.parse(version)
    return Result.pcall(M.new, version)
end

return M