`sig
type t
val empty : Pp.t
val ( $ ) : Pp.t -> Pp.t -> Pp.t
val text : string -> Pp.t
val break : Pp.t
val break_null : Pp.t
val break_with : string -> Pp.t
val nest : int -> Pp.t -> Pp.t
val hgrp : Pp.t -> Pp.t
val vgrp : Pp.t -> Pp.t
val agrp : Pp.t -> Pp.t
val fgrp : Pp.t -> Pp.t
val to_string : ?width:int -> Pp.t -> string
val to_file : ?width:int -> Pervasives.out_channel -> Pp.t -> unit
val list : sep:Pp.t -> f:('a -> Pp.t) -> 'a list -> Pp.t
val commalist : f:('a -> Pp.t) -> 'a list -> Pp.t
val ( $/ ) : Pp.t -> Pp.t -> Pp.t
val ( $// ) : Pp.t -> Pp.t -> Pp.t
val block : ?indent:int -> f:('a -> Pp.t) -> 'a list -> Pp.t
module Infix :
sig
val ( $ ) : Pp.t -> Pp.t -> Pp.t
val ( $/ ) : Pp.t -> Pp.t -> Pp.t
val ( $// ) : Pp.t -> Pp.t -> Pp.t
end
val hlist : Pp.t list -> Pp.t
val vlist : Pp.t list -> Pp.t
val alist : Pp.t list -> Pp.t
end`