aboutsummaryrefslogtreecommitdiffstats
path: root/lua/nvim-lsp-installer/core/result.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/nvim-lsp-installer/core/result.lua')
-rw-r--r--lua/nvim-lsp-installer/core/result.lua9
1 files changed, 9 insertions, 0 deletions
diff --git a/lua/nvim-lsp-installer/core/result.lua b/lua/nvim-lsp-installer/core/result.lua
index 74fb9bc8..132e2758 100644
--- a/lua/nvim-lsp-installer/core/result.lua
+++ b/lua/nvim-lsp-installer/core/result.lua
@@ -77,6 +77,15 @@ function Result:map(mapper_fn)
end
---@param mapper_fn fun(value: any): any
+function Result:map_err(mapper_fn)
+ if self:is_failure() then
+ return Result.failure(mapper_fn(self.value.error))
+ else
+ return self
+ end
+end
+
+---@param mapper_fn fun(value: any): any
function Result:map_catching(mapper_fn)
if self:is_success() then
local ok, result = pcall(mapper_fn, self.value)