Module: Rescuetime::Formatters

Included in:
ReportFormatters
Defined in:
lib/rescuetime/formatters.rb,
lib/rescuetime/formatters/csv_formatter.rb,
lib/rescuetime/formatters/base_formatter.rb,
lib/rescuetime/formatters/array_formatter.rb

Overview

Contains all Rescuetime formatters and formatter-loading behavior

Since:

  • v0.4.0

Defined Under Namespace

Classes: ArrayFormatter, BaseFormatter, CSVFormatter

Constant Summary collapse

BASE_FORMATTER =

The superclass for all valid Rescuetime formatters

Since:

  • v0.4.0

Rescuetime::Formatters::BaseFormatter
LOCAL_FORMATTER_PATH =

The path where local in-gem formatters are stored. Expands to lib/rescuetime/formatters/*_formatter.rb

Since:

  • v0.4.0

'../formatters/*_formatter.rb'.freeze

Instance Method Summary collapse

Instance Method Details

#load_formatters(base_formatter: BASE_FORMATTER) ⇒ Array<Class>

Returns a list of known formatters. A known formatter is either in the local gem folder lib/rescuetime/formatters/ and ends in ‘_formatter.rb’, or it follows the path-matching options provided by the user using Rescuetime.configure.

Parameters:

  • base_formatter (Class#descendents) (defaults to: BASE_FORMATTER)

    the formatter superclass - #load_formatters returns all classes that inherit from this class

Returns:

  • (Array<Class>)

    known report formatters

See Also:

  • Configuration.formatter_paths

Since:

  • v0.4.0



27
28
29
30
# File 'lib/rescuetime/formatters.rb', line 27

def load_formatters(base_formatter: BASE_FORMATTER)
  load_formatter_files
  base_formatter.descendents
end