diff options
| author | Nathan Reiner <nathan@nathanreiner.xyz> | 2026-04-20 13:43:01 +0200 |
|---|---|---|
| committer | Nathan Reiner <nathan@nathanreiner.xyz> | 2026-04-20 13:43:01 +0200 |
| commit | 0686b40f979f4607b3fd8cca21c463e98f617666 (patch) | |
| tree | 355e8a7bfd4b37510d05370876a9d8cedfdcd5d7 /src/extensions/table.lua | |
| parent | ba561ebd063b391013b6c9c1fcc9b1838dd422e6 (diff) | |
implement builder and instance
Diffstat (limited to 'src/extensions/table.lua')
| -rw-r--r-- | src/extensions/table.lua | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/extensions/table.lua b/src/extensions/table.lua new file mode 100644 index 0000000..eb983d3 --- /dev/null +++ b/src/extensions/table.lua @@ -0,0 +1,28 @@ + +function table:extend(other) + if type(other) == 'table' then + for _, value in ipairs(other) do + self[#self + 1] = value + end + else + for value in other do + self[#self + 1] = value + end + end +end + +function table:merge(other) + for key, value in pairs(other) do + self[key] = value + end +end + +function table.from_iter(iter) + local t = {} + + for value in iter do + t[#t + 1] = value + end + + return t +end |