sig
  val string_of_unit : unit -> string
  val string_of_char : char -> string
  val string_of_string : string -> string
  val string_of_complex : Complex.t -> string
  val string_of_buffer : Buffer.t -> string
  val make_string_of_array : ('-> string) -> 'a array -> string
  val make_string_of_list : ('-> string) -> 'a list -> string
  val make_string_of_option : ('-> string) -> 'a option -> string
  val make_string_of_ref : ('-> string) -> 'Pervasives.ref -> string
  val make_string_of_hashtbl :
    ('-> string) -> ('-> string) -> ('a, 'b) Hashtbl.t -> string
  val make_string_of_queue : ('-> string) -> 'Queue.t -> string
  val make_string_of_stack : ('-> string) -> 'Stack.t -> string
  val make_string_of_weak : ('a option -> string) -> 'Weak.t -> string
  val make_string_of_tuple1 : ('-> string) -> '-> string
  val make_string_of_tuple2 :
    ('-> string) -> ('-> string) -> 'a * '-> string
  val make_string_of_tuple3 :
    ('-> string) ->
    ('-> string) -> ('-> string) -> 'a * 'b * '-> string
  val make_string_of_tuple4 :
    ('-> string) ->
    ('-> string) ->
    ('-> string) -> ('-> string) -> 'a * 'b * 'c * '-> string
  val make_string_of_tuple5 :
    ('-> string) ->
    ('-> string) ->
    ('-> string) ->
    ('-> string) -> ('-> string) -> 'a * 'b * 'c * 'd * '-> string
end