Files
nvim/lua/lazy-load.lua

29 lines
453 B
Lua

local M = {}
function M.setup(module, opts)
local instance = nil
local function setup()
if instance == nil then
instance = require(module)
if instance.setup then
instance.setup(opts or {})
end
end
end
return setmetatable({}, {
__index = function(_, key)
setup()
return instance[key]
end,
__call = function(_, ...)
setup()
return instance(...)
end,
})
end
return M