package octez-libs

  1. Overview
  2. Docs

Manage a common "--for-script <FORMAT>" option to make the output of certain commands script-friendly.

type output_format

A representation of the output format.

val clic_arg : unit -> (output_format option, _) Tezos_clic.arg

Command line argument for Tezos_clic.command (and the Tezos_clic.args* functions). Not that this is the only way to obtain a value of type output_format. On the command line, it appears as --for-script with values TSV or CSV.

val output : ?channel:Lwt_io.output_channel -> output_format option -> for_human:(unit -> unit Tezos_error_monad.Error_monad.tzresult Lwt.t) -> for_script:(unit -> string list list) -> unit Tezos_error_monad.Error_monad.tzresult Lwt.t

output fmt_opt ~for_human ~for_script behaves in one of two ways. If fmt_opt is Some _, then it formats the value returned by for_script (). The function's return value is formatted as lines of columns of values (list of lists of strings). This is to help scripts to decode/interpret/parse the output. Otherwise, if fmt_opt is None, it calls for_human () which is responsible for the whole formatting.

The optional argument channel is used when automatically formatting the value returned by for_script (). It has no effect on for_human ().

val output_row : ?channel:Lwt_io.output_channel -> output_format option -> for_human:(unit -> unit Tezos_error_monad.Error_monad.tzresult Lwt.t) -> for_script:(unit -> string list) -> unit Tezos_error_monad.Error_monad.tzresult Lwt.t

Same as output but for a single row of data.

output_for_human fmt_opt for_human behaves in either of two ways. If fmt_opt is None, then it calls for_human (). Otherwise, it does nothing.

Use this function to provide output that is of no interest to automatic tools.

OCaml

Innovation. Community. Security.