From 09d49808ccdd39e36d6d932eb1b749245aae7490 Mon Sep 17 00:00:00 2001 From: Tomasz Bekas Date: Wed, 15 May 2024 20:30:46 +0200 Subject: [PATCH] AsyncIter.new --- codex/erasure/erasure.nim | 3 ++- codex/utils/asynciter.nim | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/codex/erasure/erasure.nim b/codex/erasure/erasure.nim index f828f03a..ecf911bc 100644 --- a/codex/erasure/erasure.nim +++ b/codex/erasure/erasure.nim @@ -120,7 +120,8 @@ proc getPendingBlocks( CatchableError, "Future for block id not found, tree cid: " & $manifest.treeCid & ", index: " & $index) - newAsyncIter[(?!bt.Block, int)](genNext, isFinished) + # newAsyncIter[(?!bt.Block, int)](genNext, isFinished) + asynciter.AsyncIter.new[(?!bt.Block, int)](genNext, isFinished) proc prepareEncodingData( self: Erasure, diff --git a/codex/utils/asynciter.nim b/codex/utils/asynciter.nim index 8035be0e..3acff009 100644 --- a/codex/utils/asynciter.nim +++ b/codex/utils/asynciter.nim @@ -64,6 +64,12 @@ proc newAsyncIter*[T](genNext: GenNext[Future[T]], isFinished: IsFinished, finis iter.next = next return iter +proc new*[T](_: type AsyncIter, genNext: GenNext[Future[T]], isFinished: IsFinished, finishOnErr: bool = true): AsyncIter[T] = + newAsyncIter[T]( + genNext, + isFinished + ) + proc emptyAsyncIter*[T](): AsyncIter[T] = ## Creates an empty AsyncIter ##