Module Core_kernel.Validated

type ('raw, 'witness) t = private 'raw
val raw : ('raw_) t -> 'raw
module type S = Core_kernel__.Validated_intf.S with type ('a, 'b) validated := ('a'b) t
module type S_bin_io = Core_kernel__.Validated_intf.S_bin_io with type ('a, 'b) validated := ('a'b) t
module Make : functor (Raw : Raw) -> S with type raw := Raw.t
module Make_bin_io_compare_hash_sexp : functor (Raw : Core_kernel__.Validated_intf.Raw_bin_io_compare_hash_sexp) -> S_bin_io_compare_hash_sexp with type raw := Raw.t

Make_bin_io_compare_hash_sexp is useful for stable types.

module Add_bin_io : functor (Raw : sig ... end) -> functor (Validated : S with type raw := Raw.t) -> sig ... end with type t := Validated.t
module Add_compare : functor (Raw : sig ... end) -> functor (Validated : S with type raw := Raw.t) -> sig ... end with type t := Validated.t
module Add_hash : functor (Raw : sig ... end) -> functor (Validated : S with type raw := Raw.t) -> sig ... end with type t := Validated.t
module Add_typerep : functor (Raw : sig ... end) -> functor (Validated : S with type raw := Raw.t) -> sig ... end with type t := Validated.t