Class: ENVied::Configuration
- Inherits:
-
Object
- Object
- ENVied::Configuration
- Defined in:
- lib/envied/configuration.rb
Instance Attribute Summary collapse
-
#current_group ⇒ Object
readonly
Returns the value of attribute current_group.
-
#defaults_enabled ⇒ Object
readonly
Returns the value of attribute defaults_enabled.
Class Method Summary collapse
Instance Method Summary collapse
- #defaults_enabled? ⇒ Boolean
- #enable_defaults!(value = nil, &block) ⇒ Object
- #group(name, &block) ⇒ Object
-
#initialize(options = {}) ⇒ Configuration
constructor
A new instance of Configuration.
- #variable(name, type = :String, options = {}) ⇒ Object
- #variables ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Configuration
5 6 7 |
# File 'lib/envied/configuration.rb', line 5 def initialize( = {}) @defaults_enabled = .fetch(:enable_defaults, false) end |
Instance Attribute Details
#current_group ⇒ Object (readonly)
Returns the value of attribute current_group.
3 4 5 |
# File 'lib/envied/configuration.rb', line 3 def current_group @current_group end |
#defaults_enabled ⇒ Object (readonly)
Returns the value of attribute defaults_enabled.
3 4 5 |
# File 'lib/envied/configuration.rb', line 3 def defaults_enabled @defaults_enabled end |
Class Method Details
.load ⇒ Object
9 10 11 12 13 |
# File 'lib/envied/configuration.rb', line 9 def self.load new.tap do |v| v.instance_eval(File.read(File.('Envfile'))) end end |
Instance Method Details
#defaults_enabled? ⇒ Boolean
19 20 21 22 23 |
# File 'lib/envied/configuration.rb', line 19 def defaults_enabled? @defaults_enabled.respond_to?(:call) ? @defaults_enabled.call : @defaults_enabled end |
#enable_defaults!(value = nil, &block) ⇒ Object
15 16 17 |
# File 'lib/envied/configuration.rb', line 15 def enable_defaults!(value = nil, &block) @defaults_enabled = (value.nil? ? block : value) end |
#group(name, &block) ⇒ Object
30 31 32 33 34 35 |
# File 'lib/envied/configuration.rb', line 30 def group(name, &block) @current_group = name.to_sym yield ensure @current_group = nil end |
#variable(name, type = :String, options = {}) ⇒ Object
25 26 27 28 |
# File 'lib/envied/configuration.rb', line 25 def variable(name, type = :String, = {}) [:group] = current_group if current_group variables << ENVied::Variable.new(name, type, ) end |
#variables ⇒ Object
37 38 39 |
# File 'lib/envied/configuration.rb', line 37 def variables @variables ||= [] end |