package progress

  1. Overview
  2. Docs
type ('a, 'b) t

The type of active progress bar displays. The type parameters 'a and 'b track the types of the reporting functions supplied by reporters (see Multi.t for details).

val start : ?config:Config.t -> ('a, 'b) Multi.t -> ('a, 'b) t

Initiate rendering of a progress bar display. Raises Failure if there is already an active progress bar display.

val reporters : ('a, unit) t -> ('a, unit) Reporter.list

reporters d is the list of initial reporting functions belonging to display d.

Note this list does not include any reporters added during progress bar rendering via add_line.

val tick : (_, _) t -> unit

tick d re-renders the contents of display d without reporting any specific values. This function can be used to update spinners, durations, etc. when there is no actual progress to report.

val add_line : ?above:int -> (_, _) t -> 'a Line.t -> 'a Reporter.t

Add a line to an ongoing display, and get its reporting function. By default, the line is added to the bottom of the display (above = 0); the ~above argument can be passed to add the line above some number of existing lines.

val finalise : (_, _) t -> unit

Terminate the given progress bar display. Raises Failure if the display has already been finalised.