Parameter Over_functor_via_branch.Req

type ('a, 'index) t = ('a, 'index) Functor.t

The type held by the Indexed Selective.

val branch : (('a, 'b) Stdlib.Either.t, 'index) t -> ('a -> 'c, 'index) t -> ('b -> 'c, 'index) t -> ('c, 'index) t

branch is like select. It chooses between two effects.

val pure : 'a -> ('a, 'index) t

Create a new t.