diff options
Diffstat (limited to '3rdparty/genie/src/base/iter.lua')
-rw-r--r-- | 3rdparty/genie/src/base/iter.lua | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/3rdparty/genie/src/base/iter.lua b/3rdparty/genie/src/base/iter.lua new file mode 100644 index 00000000000..0693ca73fbc --- /dev/null +++ b/3rdparty/genie/src/base/iter.lua @@ -0,0 +1,16 @@ +iter = {} + +-- sortByKeys iterates over the table where the keys are in sort order + + function iter.sortByKeys(arr, f) + local a = table.keys(arr) + table.sort(a, f) + + local i = 0 + return function() + i = i + 1 + if a[i] ~= nil then + return a[i], arr[a[i]] + end + end + end |