Module: ClassConfig

Defined in:
lib/class_config.rb

Constant Summary collapse

VERSION =
'0.0.1'

Instance Method Summary collapse

Instance Method Details

#attr_config(name, default_value = nil) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/class_config.rb', line 7

def attr_config(name, default_value=nil)
  configuration_defaults[name.to_sym] = default_value

  define_singleton_method name do
    configuration[name.to_sym]
  end

  define_singleton_method "#{name}=" do |value|
    configuration_values[name.to_sym] = value
  end
end

#configurationObject



19
20
21
# File 'lib/class_config.rb', line 19

def configuration
  configuration_defaults.merge configuration_values
end

#restore_default_configurationObject



23
24
25
# File 'lib/class_config.rb', line 23

def restore_default_configuration
  configuration_values.clear
end