We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 8b8c66a commit d524b15Copy full SHA for d524b15
1 file changed
Functional.moon
@@ -180,15 +180,20 @@ list = setmetatable {
180
i += 1
181
return removed, shift
182
183
- removeWhere: (tbl, predicate = _function.true) ->
+ removeWhere: (tbl, predicate = _function.true, sparse = false) ->
184
removeAll = predicate == _function.true
185
removed, r = {}, 0
186
for i, v in ipairs tbl
187
if removeAll or predicate v, i, tbl
188
r += 1
189
- removed[r], tbl[i] = v
+ if sparse
190
+ removed[r], tbl[i] = v
191
+ else removed[r] = i
192
- return removed, r
193
194
+ return removed, r
195
+ else
196
+ return list.removeIndexes(tbl, removed), r
197
198
slice: (tbl, first = 1, last = -1) ->
199
len = #tbl
0 commit comments