rename newFuture proc's (#136)
...or the compiler randomly gets confused when `-d:chronosFutureTracking` is enabled
This commit is contained in:
parent
b5915ecd29
commit
7fd1a0f635
|
@ -96,48 +96,48 @@ template setupFutureBase(loc: ptr SrcLoc) =
|
||||||
futureList.head = result
|
futureList.head = result
|
||||||
futureList.count.inc()
|
futureList.count.inc()
|
||||||
|
|
||||||
proc newFuture[T](loc: ptr SrcLoc): Future[T] =
|
proc newFutureImpl[T](loc: ptr SrcLoc): Future[T] =
|
||||||
setupFutureBase(loc)
|
setupFutureBase(loc)
|
||||||
|
|
||||||
proc newFutureSeq[A, B](loc: ptr SrcLoc): FutureSeq[A, B] =
|
proc newFutureSeqImpl[A, B](loc: ptr SrcLoc): FutureSeq[A, B] =
|
||||||
setupFutureBase(loc)
|
setupFutureBase(loc)
|
||||||
|
|
||||||
proc newFutureStr[T](loc: ptr SrcLoc): FutureStr[T] =
|
proc newFutureStrImpl[T](loc: ptr SrcLoc): FutureStr[T] =
|
||||||
setupFutureBase(loc)
|
setupFutureBase(loc)
|
||||||
|
|
||||||
proc newFutureVar[T](loc: ptr SrcLoc): FutureVar[T] =
|
proc newFutureVarImpl[T](loc: ptr SrcLoc): FutureVar[T] =
|
||||||
FutureVar[T](newFuture[T](loc))
|
FutureVar[T](newFutureImpl[T](loc))
|
||||||
|
|
||||||
template newFuture*[T](fromProc: static[string] = ""): auto =
|
template newFuture*[T](fromProc: static[string] = ""): Future[T] =
|
||||||
## Creates a new future.
|
## Creates a new future.
|
||||||
##
|
##
|
||||||
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
||||||
## that this future belongs to, is a good habit as it helps with debugging.
|
## that this future belongs to, is a good habit as it helps with debugging.
|
||||||
newFuture[T](getSrcLocation(fromProc))
|
newFutureImpl[T](getSrcLocation(fromProc))
|
||||||
|
|
||||||
template newFutureSeq*[A, B](fromProc: static[string] = ""): auto =
|
template newFutureSeq*[A, B](fromProc: static[string] = ""): FutureSeq[A, B] =
|
||||||
## Create a new future which can hold/preserve GC sequence until future will
|
## Create a new future which can hold/preserve GC sequence until future will
|
||||||
## not be completed.
|
## not be completed.
|
||||||
##
|
##
|
||||||
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
||||||
## that this future belongs to, is a good habit as it helps with debugging.
|
## that this future belongs to, is a good habit as it helps with debugging.
|
||||||
newFutureSeq[A, B](getSrcLocation(fromProc))
|
newFutureSeqImpl[A, B](getSrcLocation(fromProc))
|
||||||
|
|
||||||
template newFutureStr*[T](fromProc: static[string] = ""): auto =
|
template newFutureStr*[T](fromProc: static[string] = ""): FutureStr[T] =
|
||||||
## Create a new future which can hold/preserve GC string until future will
|
## Create a new future which can hold/preserve GC string until future will
|
||||||
## not be completed.
|
## not be completed.
|
||||||
##
|
##
|
||||||
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
||||||
## that this future belongs to, is a good habit as it helps with debugging.
|
## that this future belongs to, is a good habit as it helps with debugging.
|
||||||
newFutureStr[T](getSrcLocation(fromProc))
|
newFutureStrImpl[T](getSrcLocation(fromProc))
|
||||||
|
|
||||||
template newFutureVar*[T](fromProc: static[string] = ""): auto =
|
template newFutureVar*[T](fromProc: static[string] = ""): FutureVar[T] =
|
||||||
## Create a new ``FutureVar``. This Future type is ideally suited for
|
## Create a new ``FutureVar``. This Future type is ideally suited for
|
||||||
## situations where you want to avoid unnecessary allocations of Futures.
|
## situations where you want to avoid unnecessary allocations of Futures.
|
||||||
##
|
##
|
||||||
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
## Specifying ``fromProc``, which is a string specifying the name of the proc
|
||||||
## that this future belongs to, is a good habit as it helps with debugging.
|
## that this future belongs to, is a good habit as it helps with debugging.
|
||||||
newFutureVar[T](getSrcLocation(fromProc))
|
newFutureVarImpl[T](getSrcLocation(fromProc))
|
||||||
|
|
||||||
proc clean*[T](future: FutureVar[T]) =
|
proc clean*[T](future: FutureVar[T]) =
|
||||||
## Resets the ``finished`` status of ``future``.
|
## Resets the ``finished`` status of ``future``.
|
||||||
|
|
Loading…
Reference in New Issue