Class: ENVied::Configuration

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

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.current_groupObject



52
53
54
# File 'lib/envied.rb', line 52

def self.current_group
  @current_group ||= :default
end

Class Method Details

.enable_defaultsObject Also known as: defaults_enabled?



35
36
37
38
39
# File 'lib/envied.rb', line 35

def self.enable_defaults
  (@enable_defaults ||= false).respond_to?(:call) ?
    @enable_defaults.call :
    @enable_defaults
end

.enable_defaults!(value = nil, &block) ⇒ Object Also known as: enable_defaults=



41
42
43
44
# File 'lib/envied.rb', line 41

def self.enable_defaults!(value = nil, &block)
  value ||= block if block_given?
  @enable_defaults = value
end

.group(name, &block) ⇒ Object



28
29
30
31
32
33
# File 'lib/envied.rb', line 28

def self.group(name, &block)
  self.current_group = name.to_sym
  yield
ensure
  self.current_group = :default
end

.variable(name, type = :String, options = {}) ⇒ Object



22
23
24
25
26
# File 'lib/envied.rb', line 22

def self.variable(name, type = :String, options = {})
  options = { default: nil, strict: true, group: self.current_group }.merge(options)
  type = Array if type == :Array
  attribute(name, type, options)
end