Class: Fino::SettingBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/fino/setting_builder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(setting_definition) ⇒ SettingBuilder

Returns a new instance of SettingBuilder.



6
7
8
# File 'lib/fino/setting_builder.rb', line 6

def initialize(setting_definition)
  @setting_definition = setting_definition
end

Instance Attribute Details

#setting_definitionObject (readonly)

Returns the value of attribute setting_definition.



4
5
6
# File 'lib/fino/setting_builder.rb', line 4

def setting_definition
  @setting_definition
end

Instance Method Details

#call(raw_value, raw_overrides, raw_variants) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/fino/setting_builder.rb', line 10

def call(raw_value, raw_overrides, raw_variants)
  global_value = deserialize_global_value(raw_value)
  overrides = deserialize_overrides(raw_overrides)
  experiment = deserialize_experiment(raw_variants)

  setting_definition.type_class.new(
    setting_definition,
    global_value,
    overrides,
    experiment
  )
end