GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Stdlib.Either(3) OCaml library Stdlib.Either(3)

Stdlib.Either - no description

Module Stdlib.Either

Module Either
: (module Stdlib__Either)

type ('a, 'b) t =
| Left of 'a
| Right of 'b

A value of ('a, 'b) Either.t contains either a value of 'a or a value of 'b

val left : 'a -> ('a, 'b) t

left v is Left v .

val right : 'b -> ('a, 'b) t

right v is Right v .

val is_left : ('a, 'b) t -> bool

is_left (Left v) is true , is_left (Right v) is false .

val is_right : ('a, 'b) t -> bool

is_right (Left v) is false , is_right (Right v) is true .

val find_left : ('a, 'b) t -> 'a option

find_left (Left v) is Some v , find_left (Right _) is None

val find_right : ('a, 'b) t -> 'b option

find_right (Right v) is Some v , find_right (Left _) is None

val map_left : ('a1 -> 'a2) -> ('a1, 'b) t -> ('a2, 'b) t

map_left f e is Left (f v) if e is Left v and e if e is Right _ .

val map_right : ('b1 -> 'b2) -> ('a, 'b1) t -> ('a, 'b2) t

map_right f e is Right (f v) if e is Right v and e if e is Left _ .

val map : left:('a1 -> 'a2) -> right:('b1 -> 'b2) -> ('a1, 'b1) t -> ('a2, 'b2) t

map ~left ~right (Left v) is Left (left v) , map ~left ~right (Right v) is Right (right v) .

val fold : left:('a -> 'c) -> right:('b -> 'c) -> ('a, 'b) t -> 'c

fold ~left ~right (Left v) is left v , and fold ~left ~right (Right v) is right v .

val iter : left:('a -> unit) -> right:('b -> unit) -> ('a, 'b) t -> unit

iter ~left ~right (Left v) is left v , and iter ~left ~right (Right v) is right v .

val for_all : left:('a -> bool) -> right:('b -> bool) -> ('a, 'b) t -> bool

for_all ~left ~right (Left v) is left v , and for_all ~left ~right (Right v) is right v .

val equal : left:('a -> 'a -> bool) -> right:('b -> 'b -> bool) -> ('a, 'b) t -> ('a, 'b) t -> bool

equal ~left ~right e0 e1 tests equality of e0 and e1 using left and right to respectively compare values wrapped by Left _ and Right _ .

val compare : left:('a -> 'a -> int) -> right:('b -> 'b -> int) -> ('a, 'b) t -> ('a, 'b) t -> int

compare ~left ~right e0 e1 totally orders e0 and e1 using left and right to respectively compare values wrapped by Left _ and Right _ . Left _ values are smaller than Right _ values.

2025-07-03 OCamldoc

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.