sig
  type ('a, 'r) t =
      [] : ('r, 'r) Format.Args.t
    | (::) : 'a * ('b, 'r) Format.Args.t -> ('-> 'b, 'r) Format.Args.t
  val apply : '-> ('a, 'r) Format.Args.t -> 'r
  val ( @ ) :
    ('a, 'r1) Format.Args.t ->
    ('r1, 'r2) Format.Args.t -> ('a, 'r2) Format.Args.t
end