From 5b0cdc5b21ab5db4f9af6f8e6d39a65c1e497469 Mon Sep 17 00:00:00 2001 From: Jon Michael Aanes Date: Wed, 10 Jul 2024 19:13:55 +0200 Subject: [PATCH] Metatable magic --- errors.lua | 4 +++- test/test_errors.lua | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/errors.lua b/errors.lua index 2484649..639c834 100644 --- a/errors.lua +++ b/errors.lua @@ -132,8 +132,9 @@ end local ErrorHandler_mt = {__call = function (self, ...) internal_error(self, '', ...) end} +local errors = {} -return function (module_name) +function errors.new(module_name) assert(type(module_name) == 'string') local err_hdl = setmetatable({}, ErrorHandler_mt) @@ -213,3 +214,4 @@ return function (module_name) return err_hdl end +return setmetatable(errors, {__call = function(self, ...) return errors.new(...) end}) diff --git a/test/test_errors.lua b/test/test_errors.lua index b81ff12..a313b74 100644 --- a/test/test_errors.lua +++ b/test/test_errors.lua @@ -1,5 +1,6 @@ local SUITE = require 'TestSuite' 'errors' + SUITE:setEnviroment { error = require 'errors' 'test_errors' }