You can use this:
proc foo: seq[proc: int {.closure.}] =
var res: type(result) = @[]
for i in 0..1:
closureScope:
res.add proc: int = 1
result = res
for f in foo():
echo f()
Run
- Can't return closure procedures from `closureScope` blocks dawkot
- Re: Can't return closure procedures from `closureScope` blocks Araq
