1 2 3 4 5 6 7 8 9 10 11
module type T = sig type t type value type 'a choice val value : t -> value val set_value : t -> value -> unit choice end