123456789_123456789_123456789_123456789_123456789_

Class: SimpleCov::Formatter::MultiFormatter

Relationships & Source Files
Namespace Children
Modules:
Inherits: Object
Defined in: lib/simplecov/formatter/multi_formatter.rb

Overview

Wraps multiple formatters so SimpleCov.formatter can drive several output formats (HTML + JSON, etc.) in a single run.

Class Method Summary

Constructor Details

.new(formatters = nil) ⇒ MultiFormatter

[ GitHub ]

  
# File 'lib/simplecov/formatter/multi_formatter.rb', line 21

def self.new(formatters = nil)
  # Normalize eagerly and capture the list in the closure. Array()
  # is pure for every accepted input shape (nil, single formatter,
  # array, or another MultiFormatter class), so this is equivalent
  # to the historical lazy per-instance memoization.
  formatter_list = Array(formatters)
  Class.new do
    define_method :formatters do
      formatter_list
    end
    include InstanceMethods
  end
end