Module is responsible for implementing a lazy-loader for any new tool which is defined in table@modules. This function makes use of a lazy-loading strategy (needs citation).
17 lines
344 B
Lua
17 lines
344 B
Lua
local builtins = {}
|
|
|
|
local function require_on_exported_call (require_path)
|
|
return setmetatable({}, {
|
|
__index = function(_, k)
|
|
return function(...)
|
|
return require(require_path)[k](...)
|
|
end
|
|
end,
|
|
})
|
|
end
|
|
|
|
|
|
builtins.find_replace = require_on_exported_call("presser.builtins.__modules").find_replace
|
|
|
|
return builtins
|