From e1b2cb5de8662966f7e6a8fbf6d41078d15dd67d Mon Sep 17 00:00:00 2001 From: TheOnePath Date: Fri, 13 Jan 2023 16:25:56 +0000 Subject: [PATCH] Added presser/builtins 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). --- presser/builtins/init.lua | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 presser/builtins/init.lua diff --git a/presser/builtins/init.lua b/presser/builtins/init.lua new file mode 100644 index 0000000..6726383 --- /dev/null +++ b/presser/builtins/init.lua @@ -0,0 +1,16 @@ +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