Simple indentation utility for code generators
t
is the type of the data to be printed.
`Line
: single line (not indented)`Block
: indented sequence`Inline
: in-line sequence (not indented)Example:
let l = [ `Line "d"; `Line "e"; ] in [ `Line "a"; `Block [ `Line "b"; `Line "c"; ]; `Inline l; `Line "f"; ]
gives:
a b c d e f
Write to a string. See to_buffer
for the options.
Write to a channel. See to_buffer
for the options.