Module: Hotsheet::Config

Included in:
Hotsheet, Column, Sheet
Defined in:
lib/hotsheet/config.rb

Instance Method Summary collapse

Instance Method Details

#merge_config!(default, custom) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/hotsheet/config.rb', line 4

def merge_config!(default, custom)
  config = default.transform_values { |value| value[:default] }

  custom.each do |key, value|
    unless default.key? key
      raise Hotsheet::Error, "Config must be one of #{default.keys}, got '#{key}'"
    end

    ensure_allowed_value! key, value, default[key]
    config[key] = value
  end

  config
end