In order to use the ioRetrying defined below, we need a concrete IO. I think it would better for this to take a generic effect type (even though it would use IO in the base trait), so that helper traits don't need to be tied to IO.
|
implicit def ioRetrying[T]: Retrying[IO[T]] = new Retrying[IO[T]] { |