feat(util): inject module

This commit is contained in:
Folke Lemaitre 2023-10-11 22:38:10 +02:00
parent 7bbd48caa0
commit d6bc320f20
No known key found for this signature in database
GPG key ID: 41F8B1FBACAE2040
4 changed files with 33 additions and 14 deletions

View file

@ -0,0 +1,20 @@
---@class lazyvim.util.inject
local M = {}
---@generic A: any
---@generic B: any
---@generic C: any
---@generic F: function
---@param fn F|fun(a:A, b:B, c:C)
---@param wrapper fun(a:A, b:B, c:C): boolean?
---@return F
function M.args(fn, wrapper)
return function(...)
if wrapper(...) == false then
return
end
return fn(...)
end
end
return M