pub type FutureValue<F> = Either<Ready<<F as Future>::Output>, F>;
enum FutureValue<F> { Left(Ready<<F as Future>::Output>), Right(F), }
First branch of the type
Second branch of the type