lib/cc/analyzer/formatters.rb
module CC
module Analyzer
module Formatters
autoload :Formatter, "cc/analyzer/formatters/formatter"
autoload :HTMLFormatter, "cc/analyzer/formatters/html_formatter"
autoload :JSONFormatter, "cc/analyzer/formatters/json_formatter"
autoload :PlainTextFormatter, "cc/analyzer/formatters/plain_text_formatter"
autoload :Spinner, "cc/analyzer/formatters/spinner"
FORMATTERS = {
html: HTMLFormatter,
json: JSONFormatter,
text: PlainTextFormatter,
}.freeze
def self.resolve(name)
FORMATTERS[name.to_sym] or raise Formatter::InvalidFormatterError, "'#{name}' is not a valid formatter. Valid options are: #{FORMATTERS.keys.join(", ")}"
end
end
end
end