1234567891011121314151617181920212223242526272829303132333435363738moduletypeS=sigtype('a,'b)t(** Implementation selected according to current OCaml version. *)(** This module defines the common [Either] interface that is provided for all
OCaml versions. For documentation of these functions, refer to the
standard library. *)valleft:'a->('a,'b)tvalright:'b->('a,'b)tvalis_left:('a,'b)t->boolvalis_right:('a,'b)t->boolvalfind_left:('a,'b)t->'aoptionvalfind_right:('a,'b)t->'boptionvalmap_left:('a1->'a2)->('a1,'b)t->('a2,'b)tvalmap_right:('b1->'b2)->('a,'b1)t->('a,'b2)tvalmap:left:('a1->'a2)->right:('b1->'b2)->('a1,'b1)t->('a2,'b2)tvalfold:left:('a->'c)->right:('b->'c)->('a,'b)t->'cvaliter:left:('a->unit)->right:('b->unit)->('a,'b)t->unitvalfor_all:left:('a->bool)->right:('b->bool)->('a,'b)t->boolvalequal:left:('a->'a->bool)->right:('b->'b->bool)->('a,'b)t->('a,'b)t->boolvalcompare:left:('a->'a->int)->right:('b->'b->int)->('a,'b)t->('a,'b)t->intend