sig
val name : 'a Type.t -> 'b Type.t -> 'c Type.t -> 'd Type.t -> string
val module_name : string
val structural_descr :
Structural_descr.t ->
Structural_descr.t ->
Structural_descr.t -> Structural_descr.t -> Structural_descr.t
type ('a, 'b, 'c, 'd) t
val reprs :
'a -> 'b -> 'c -> 'd -> ('a, 'b, 'c, 'd) Type.Polymorphic4_input.t list
end