module Athena::Console::Output::Interface
#
Athena::Console uses a dedicated interface for representing an output destination.
This allows it to have multiple more specialized implementations as opposed to
being tightly coupled to STDOUT or a raw IO.
This interface represents the methods that must be implemented, however implementations can add additional functionality.
The most common implementations include ACON::Output::ConsoleOutput which is based on STDOUT and STDERR,
and ACON::Output::Null which can be used when you want to silent all output, such as for tests.
Each output's ACON::Output::Verbosity and output ACON::Output::Type can also be configured on a per message basis.
Direct including types
Athena::Console::Output
Athena::Console::Output::Null
Athena::Console::Style::Output
Methods#
abstract #decorated=(decorated : Bool) : Nil#
Sets if printed messages should be decorated.
abstract #decorated? : Bool#
Returns true if printed messages should have their decorations applied.
I.e. ACON::Formatter::OutputStyleInterface.
abstract #formatter : ACON::Formatter::Interface#
Returns the ACON::Formatter::Interface used by self.
abstract #formatter=(formatter : ACON::Formatter::Interface) : Nil#
Sets the ACON::Formatter::Interface used by self.
abstract #print(message : String | Enumerable(String), verbosity : ACON::Output::Verbosity = :normal, output_type : ACON::Output::Type = :normal) : Nil#
Outputs the provided message. The verbosity and/or output_type parameters can be used to control when and how the message is printed.
abstract #puts(message : String | Enumerable(String), verbosity : ACON::Output::Verbosity = :normal, output_type : ACON::Output::Type = :normal) : Nil#
Outputs the provided message followed by a new line. The verbosity and/or output_type parameters can be used to control when and how the message is printed.
abstract #verbosity : ACON::Output::Verbosity#
Returns the minimum ACON::Output::Verbosity required for a message to be printed.
abstract #verbosity=(verbosity : ACON::Output::Verbosity) : Nil#
Set the minimum ACON::Output::Verbosity required for a message to be printed.