Module type Indexed_selective.WITH_BRANCH

Minimal definition using branch without Applicative requirements.

type ('a, 'index) 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.