module Variant:sig
..end
include Variant_internal
val typename_of_t : 'a t -> 'a Typename.t
val length : 'a t -> int
val tag : 'a t -> int -> 'a tag
val is_polymorphic : 'a t -> bool
val value : 'a t -> 'a -> 'a value
val fold : 'a t -> init:'b -> f:('b -> 'a tag -> 'b) -> 'b
val internal_use_only : 'a -> 'a