diff options
Diffstat (limited to 'lua/nvim-lsp-installer/installers/init.lua')
| -rw-r--r-- | lua/nvim-lsp-installer/installers/init.lua | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lua/nvim-lsp-installer/installers/init.lua b/lua/nvim-lsp-installer/installers/init.lua index e9d99138..f394a33d 100644 --- a/lua/nvim-lsp-installer/installers/init.lua +++ b/lua/nvim-lsp-installer/installers/init.lua @@ -1,3 +1,5 @@ +local platform = require "nvim-lsp-installer.platform" + local M = {} function M.compose(installers) @@ -25,4 +27,24 @@ function M.compose(installers) end end +function M.when(platform_table) + return function(server, callback) + if platform.is_unix() then + if platform_table.unix then + platform_table.unix(server, callback) + else + callback(false, ("Unix is not yet supported for server %q."):format(server.name)) + end + elseif platform.is_win() then + if platform_table.win then + platform_table.win(server, callback) + else + callback(false, ("Windows is not yet supported for server %q."):format(server.name)) + end + else + callback(false, "installers.when: Could not find installer for current platform.") + end + end +end + return M |
