Files
Nim/tests/async/tnimcall_to_closure.nim
2016-01-11 11:11:44 +01:00

18 lines
409 B
Nim

import asyncdispatch
proc defaultOnProgressChanged() = discard
proc ask(x: proc()) = x()
proc retrFile*(onProgressChanged: proc() {.nimcall.}): Future[void] =
var retFuture = newFuture[void]("retrFile")
iterator retrFileIter(): FutureBase {.closure.} =
ask(onProgressChanged)
complete(retFuture)
var nameIterVar = retrFileIter
return retFuture
discard retrFile(defaultOnProgressChanged)