Module IndentPrinter

type output_elt =
  1. | Newline
  2. | Indent of int
  3. | Whitespace of string
  4. | Text of string
type !'a output_kind =
  1. | Numeric of int -> 'a -> 'a
  2. | Print of string -> 'a -> 'a
  3. | Extended of IndentBlock.t -> output_elt -> 'a -> 'a
type !'a output = {
  1. debug : bool;
  2. config : IndentConfig.t;
  3. in_lines : int -> bool;
  4. adaptive : bool;
  5. indent_empty : bool;
  6. kind : 'a output_kind;
}
val std_output : unit output
val proceed : 'a output -> Nstream.t -> IndentBlock.t -> 'a -> 'a