Module Univ.Constr

module Constr: sig .. end
A Constr.t represents a single constructor in the extensible variant type. On creation, one must provide a name for the constructor and a sexp-converter for serializing the argument to the variant. Both the name and the sexp-converter are used for display purposes only.

type 'a t 
val create : string -> ('a -> Sexplib.Sexp.t) -> 'a t
create name to_sexp if the type 'a doesn't support sexp conversion, then a good practice is to use sexp_of_opaque as the converter.
val name : 'a t -> string
val hash : 'a t -> int
val sexp_of_t : ('a -> Sexplib.Sexp.t) -> 'a t -> Sexplib.Sexp.t

create name to_sexp if the type 'a doesn't support sexp conversion, then a good practice is to use sexp_of_opaque as the converter.