From b0b3b8db57fba8d308a01649c51e3074594f6d47 Mon Sep 17 00:00:00 2001 From: heav Date: Thu, 27 Oct 2022 00:49:48 +0000 Subject: oops. --- czzc/table.lua | 33 +++++++++++++++++++++++++++++++++ table.lua | 33 --------------------------------- 2 files changed, 33 insertions(+), 33 deletions(-) create mode 100644 czzc/table.lua delete mode 100644 table.lua diff --git a/czzc/table.lua b/czzc/table.lua new file mode 100644 index 0000000..bb34f2f --- /dev/null +++ b/czzc/table.lua @@ -0,0 +1,33 @@ +local M = {} + +-- shallow copies a table, dst optional. +M.copy = function(src, dst) + dst = dst or {} + for k, v in pairs(src) do + dst[k] = v + end + return dst +end + +-- recursively copies a table, dst optional. +-- might implode for infinitely nested tables. +M.deepcopy = function(src, dst) + dst = dst or {} + -- convenience. + if type(src) ~= "table" then return src end + for k, v in pairs(src) do + dst[k] = M.deepcopy(v) + end + return dst +end + +-- replaces all values of a table with fn(value). +M.map = function(fn, tbl) + local res = M.copy(tbl) + for k, v in pairs(tbl) do + res[k] = fn(v) + end + return res +end + +return M diff --git a/table.lua b/table.lua deleted file mode 100644 index bb34f2f..0000000 --- a/table.lua +++ /dev/null @@ -1,33 +0,0 @@ -local M = {} - --- shallow copies a table, dst optional. -M.copy = function(src, dst) - dst = dst or {} - for k, v in pairs(src) do - dst[k] = v - end - return dst -end - --- recursively copies a table, dst optional. --- might implode for infinitely nested tables. -M.deepcopy = function(src, dst) - dst = dst or {} - -- convenience. - if type(src) ~= "table" then return src end - for k, v in pairs(src) do - dst[k] = M.deepcopy(v) - end - return dst -end - --- replaces all values of a table with fn(value). -M.map = function(fn, tbl) - local res = M.copy(tbl) - for k, v in pairs(tbl) do - res[k] = fn(v) - end - return res -end - -return M -- cgit v1.2.3