Module Progress.Reporter

type -'a t

The (abstract) type of reporter functions used by the manual lifecycle management functions in Display. An 'a t is conceptually an 'a -> unit function, but can be explicitly finalised.

val report : 'a t -> 'a -> unit
val finalise : _ t -> unit

finalise t terminates rendering of the line associated with reporter t. Attempting to report to a finalised reporter will raise an exception.

type (_, _) list =
| [] : ( 'a, 'a ) list
| :: : 'a * ( 'b, 'c ) list -> ( 'a -> 'b, 'c ) list

A heterogeneous list type, used by Display for returning a list of reporters corresponding to multi-line progress displays.