Base.Eitherval hash_fold_t :
( Hash.state -> 'f -> Hash.state ) ->
( Hash.state -> 's -> Hash.state ) ->
Hash.state ->
( 'f, 's ) t ->
Hash.stateinclude Sexpable.S2 with type ('f, 's) t := ( 'f, 's ) tval t_of_sexp :
( Sexplib0__.Sexp.t -> 'a ) ->
( Sexplib0__.Sexp.t -> 'b ) ->
Sexplib0__.Sexp.t ->
( 'a, 'b ) tval sexp_of_t :
( 'a -> Sexplib0__.Sexp.t ) ->
( 'b -> Sexplib0__.Sexp.t ) ->
( 'a, 'b ) t ->
Sexplib0__.Sexp.tinclude Invariant.S2 with type ('a, 'b) t := ( 'a, 'b ) tval invariant : ( 'a -> unit ) -> ( 'b -> unit ) -> ( 'a, 'b ) t -> unitval value : ( 'a, 'a ) t -> 'aval iter :
( 'a, 'b ) t ->
first:( 'a -> unit ) ->
second:( 'b -> unit ) ->
unitval value_map : ( 'a, 'b ) t -> first:( 'a -> 'c ) -> second:( 'b -> 'c ) -> 'cmodule type Focused = sig ... endval is_first : ( _, _ ) t -> boolval is_second : ( _, _ ) t -> boolval first : 'f -> ( 'f, _ ) tfirst and second are First.return and Second.return.
val second : 's -> ( _, 's ) t