Crate cli_toolbox[][src]

Expand description

Utility library for working with cli output ergonomically.

This is not a logging alternative, it’s intended to produce output for end user consumption.

It handles three levels of verbosity that can be set dynamically at runtime:

  • Quite - no output
  • Terse - used to provide minimal user output
  • Verbose - used to provide elaborated and/or additional user output

Output Macros

  • debug! - conditionally compiled console debugging output - [debug]

  • report! - conditional console output according to verbosity level - [debug|release]

* debug! is intended to be used during application development

* all other debugging and telemetry output is most likely better served with a logging library

Conditional Code

  • eval! - conditional code execution according to verbosity level - [debug|release]

  • release! - conditional code execution according to verbosity level - [release]