class Mhc::Formatter

Public Class Methods

build(formatter:, date_range:, **options) click to toggle source
# File lib/mhc/formatter.rb, line 6
def self.build(formatter:, date_range:, **options)
  case formatter.to_sym
  when :text
    Text.new(date_range: date_range, options:options)
  when :mail
    Mail.new(date_range: date_range, options:options)
  when :orgtable
    OrgTable.new(date_range: date_range, options:options)
  when :emacs
    Emacs.new(date_range: date_range, options:options)
  when :icalendar
    Icalendar.new(date_range: date_range, options:options)
  when :calfw
    SymbolicExpression.new(date_range: date_range, options:options)
  when :howm
    Howm.new(date_range: date_range, options:options)
  when :json
    Json.new(date_range: date_range, options:options)
  else
    raise Formatter::NameError.new("Unknown format: #{formatter} (#{formatter.class})")
  end
end