Files
dep/lua/dep/modules/init.lua

40 lines
771 B
Lua

local module = require("dep.modules.module")
---@class modules
---@field modules module[] all modules in dep
local modules = {}
--- Initialize all the modules
---@param self table?
---@param speclist table
---@param overrides spec? overrides
---@return modules modules manager
---@nodisacard
function modules:setup(speclist, overrides)
overrides = overrides or {}
local o = {}
self = {}
self.__index = self
setmetatable(o, self)
-- create a list of modules
o.modules = {}
-- loop through all modules and initialize them
for _, modpath in ipairs(speclist.modules) do
local mod = module.new(
nil,
modpath,
speclist.modules.prefix,
overrides
)
table.insert(o.modules, mod)
end
return self
end
return modules