class Lopata::ScenarioBuilder::OptionSet
Set of options for scenario
Attributes
variants[R]
@private
Public Class Methods
new(*variants)
click to toggle source
@private
# File lib/lopata/scenario_builder.rb, line 349 def initialize(*variants) @variants = {} variants.compact.each { |v| self << v } end
Public Instance Methods
+(other_set)
click to toggle source
@private
# File lib/lopata/scenario_builder.rb, line 355 def +(other_set) self.class.new(*@variants.values).tap do |sum| other_set.each { |v| sum << v } end end
<<(variant)
click to toggle source
@private
# File lib/lopata/scenario_builder.rb, line 362 def <<(variant) @variants[variant.key] = variant end
[](key)
click to toggle source
@private
# File lib/lopata/scenario_builder.rb, line 367 def [](key) @variants[key] end
each(&block)
click to toggle source
@private
# File lib/lopata/scenario_builder.rb, line 372 def each(&block) @variants.values.each(&block) end
metadata()
click to toggle source
@return [Hash{Symbol => Object}] metadata for this option set
# File lib/lopata/scenario_builder.rb, line 382 def metadata @variants.values.inject({}) do |metadata, variant| metadata.merge(variant.metadata(self)) end end
title()
click to toggle source
@private
# File lib/lopata/scenario_builder.rb, line 377 def title @variants.values.map(&:title).compact.join(' ') end