Trans.nvim/lua/Trans/init.lua

26 lines
584 B
Lua

---Set or Get metatable which will find module in folder
---@param folder_name string
---@param origin table?
---@return table
local function metatable(folder_name, origin)
return setmetatable(origin or {}, {
__index = function(tbl, key)
local status, result = pcall(require, ('Trans.%s.%s'):format(folder_name, key))
if not status then return end
tbl[key] = result
return result
end
})
end
local M = metatable('core')
M.metatable = metatable
M.style = metatable("style")
M.cache = {}
return M