functor
  (P : sig class printer : unit -> Printer_api.extensible_printer_type end) ->
  Printer_api.S