class BenchmarkDriver::Output

def initialize(type:, metrics:, jobs:, contexts:, options:)

Parameters:
  • options (Hash{ Symbol => Object }) --
  • contexts (Array) --
  • jobs (Array) --
  • metrics (Array) --
  • type (String) --
def initialize(type:, metrics:, jobs:, contexts:, options:)
  output = ::BenchmarkDriver::Output.get(type)
  output_params = output.instance_method(:initialize).parameters.select do |type, _name|
    type == :keyreq || type == :key
  end.map(&:last)
  # Optionally pass `options` to #initialize
  kwargs = {}
  if output_params.include?(:options)
    kwargs[:options] = options
  end
  @output = output.new(
    metrics: metrics,
    jobs: jobs,
    contexts: contexts,
    **kwargs,
  )
end