Class: Smplkit::Config::ConfigEnvironment
- Inherits:
-
Object
- Object
- Smplkit::Config::ConfigEnvironment
- Defined in:
- lib/smplkit/config/models.rb
Overview
Per-environment value overrides for a Config.
Read-only inspection container. Mutation is performed via Config‘s setters with environment: (e.g. cfg.set_string(“k”, “v”, environment: “production”)).
Instance Method Summary collapse
- #_replace_raw(values) ⇒ Object
-
#initialize(values: nil) ⇒ ConfigEnvironment
constructor
A new instance of ConfigEnvironment.
-
#values ⇒ Object
Returns overrides as a plain Hash { “key” => raw_value }.
-
#values_raw ⇒ Object
Returns the full typed overrides { “key” => { “value” => v, “type” => t, “description” => d } } (read-only deep copy).
Constructor Details
#initialize(values: nil) ⇒ ConfigEnvironment
Returns a new instance of ConfigEnvironment.
45 46 47 48 49 50 51 52 |
# File 'lib/smplkit/config/models.rb', line 45 def initialize(values: nil) @values_raw = {} return unless values values.each do |k, v| @values_raw[k] = v.is_a?(Hash) && v.key?("value") ? v : { "value" => v } end end |
Instance Method Details
#_replace_raw(values) ⇒ Object
66 67 68 |
# File 'lib/smplkit/config/models.rb', line 66 def _replace_raw(values) @values_raw = values end |
#values ⇒ Object
Returns overrides as a plain Hash { “key” => raw_value }.
55 56 57 |
# File 'lib/smplkit/config/models.rb', line 55 def values @values_raw.transform_values { |v| v["value"] } end |
#values_raw ⇒ Object
Returns the full typed overrides { “key” => { “value” => v, “type” => t, “description” => d } } (read-only deep copy).
62 63 64 |
# File 'lib/smplkit/config/models.rb', line 62 def values_raw @values_raw.transform_values { |v| v.is_a?(Hash) ? v.dup : v } end |