Class: Anyway::Settings::Future

Inherits:
Object
  • Object
show all
Defined in:
lib/anyway/settings.rb,
sig/anyway_config.rbs

Overview

Future encapsulates settings that will be introduced in the upcoming version with the default values, which could break compatibility

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeFuture

Returns a new instance of Future.



31
32
33
# File 'lib/anyway/settings.rb', line 31

def initialize
  @store = {}
end

Class Method Details

.setting(name, default_value) ⇒ Object

Parameters:

Returns:



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/anyway/settings.rb', line 14

def setting(name, default_value)
  settings[name] = default_value

  define_method(name) do
    store[name]
  end

  define_method(:"#{name}=") do |val|
    store[name] = val
  end
end

.settingsHash[untyped, untyped]

Returns:



26
27
28
# File 'lib/anyway/settings.rb', line 26

def settings
  @settings ||= {}
end

Instance Method Details

#use(*names) ⇒ Object

Parameters:

Returns:



35
36
37
38
# File 'lib/anyway/settings.rb', line 35

def use(*names)
  store.clear
  names.each { store[_1] = self.class.settings[_1] }
end