aboutsummaryrefslogtreecommitdiffstats
path: root/lua/mason-core/providers/init.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-11-02 02:52:39 +0100
committerGitHub <noreply@github.com>2022-11-02 01:52:39 +0000
commit1d5c38baa6fcdd4faf969322081dc5f03d75c6d0 (patch)
tree445c86c1bfb6e02a2977de95b5f4410780c5a7ba /lua/mason-core/providers/init.lua
parentfix(taplo): rename files to match upstream (#613) (diff)
downloadmason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.tar
mason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.tar.gz
mason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.tar.bz2
mason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.tar.lz
mason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.tar.xz
mason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.tar.zst
mason-1d5c38baa6fcdd4faf969322081dc5f03d75c6d0.zip
feat(gem): use provider API (#617)
Diffstat (limited to 'lua/mason-core/providers/init.lua')
-rw-r--r--lua/mason-core/providers/init.lua7
1 files changed, 7 insertions, 0 deletions
diff --git a/lua/mason-core/providers/init.lua b/lua/mason-core/providers/init.lua
index 76bd431b..bf8e2155 100644
--- a/lua/mason-core/providers/init.lua
+++ b/lua/mason-core/providers/init.lua
@@ -24,10 +24,17 @@ local Result = require "mason-core.result"
---@field get_latest_version? async fun(pkg: string): Result # Result<PyPiPackage>
---@field get_all_versions? async fun(pkg: string): Result # Result<string[]> # Sorting should not be relied upon due to "proprietary" sorting algo in pip that is difficult to replicate in mason-registry-api.
+---@alias RubyGem { name: string, version: string }
+
+---@class RubyGemsProvider
+---@field get_latest_version? async fun(gem: string): Result # Result<RubyGem>
+---@field get_all_versions? async fun(gem: string): Result # Result<string[]>
+
---@class Provider
---@field github? GitHubProvider
---@field npm? NpmProvider
---@field pypi? PyPiProvider
+---@field rubygems? RubyGemsProvider
local function service_mt(service)
return setmetatable({}, {