FreeScalaFutureRunner

class FreeScalaFutureRunner(scheduler: ScheduledExecutorService, blockingExecutor: Executor) extends ScalaRunner[FreeScalaDSL, [T] =>> Future[T]]

Runner of FreeScalaDSL that returns a Future.

Runner of FreeScalaDSL that returns a Future.

It is known to be flawed by design in that it might create long (potentially infinite) chains of Promises. This could be solved with a custom implementation of promises/futures that support unregistration of listeners.

On top of that, expect bugs, since the implementation is full of unsafe type casts, because Scala's (including Dotty's) type inference cannot cope with the kind of pattern matches found here.

trait ScalaRunner[FreeScalaDSL, [T] =>> Future[T]]
trait Runner[FreeScalaDSL, [T] =>> Future[T]]
class Object
trait Matchable
class Any

Value members

Concrete methods

override def runScala[A](prg: Done -⚬ Val[A]): Future[A]
Definition Classes

Inherited methods

override def run(prg: Done -⚬ Done): Future[Unit]
Definition Classes
Inherited from
ScalaRunner

Concrete fields