summaryrefslogtreecommitdiffstats
path: root/lua/mason-registry/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/mason-registry/init.lua')
-rw-r--r--lua/mason-registry/init.lua21
1 files changed, 21 insertions, 0 deletions
diff --git a/lua/mason-registry/init.lua b/lua/mason-registry/init.lua
index 0f1805a4..e798ac92 100644
--- a/lua/mason-registry/init.lua
+++ b/lua/mason-registry/init.lua
@@ -193,4 +193,25 @@ function M.refresh(cb)
end
end
+---@type table<string, string[]>
+local aliases = {}
+
+---Register aliases for the specified packages
+---@param new_aliases table<string, string[]>
+function M.register_package_aliases(new_aliases)
+ for pkg_name, pkg_aliases in pairs(new_aliases) do
+ aliases[pkg_name] = aliases[pkg_name] or {}
+ for _, alias in pairs(pkg_aliases) do
+ if alias ~= pkg_name then
+ table.insert(aliases[pkg_name], alias)
+ end
+ end
+ end
+end
+
+---@param name string
+function M.get_package_aliases(name)
+ return aliases[name] or {}
+end
+
return M