Class: Plumbum::OneProvider
- Inherits:
-
Object
- Object
- Plumbum::OneProvider
- Includes:
- Providers::Singular
- Defined in:
- lib/plumbum/one_provider.rb
Overview
Provider that provides a single value for a specified key.
Instance Attribute Summary collapse
-
#key ⇒ String, Symbol
readonly
The key used to identify the provided value.
Instance Method Summary collapse
-
#initialize(key, value: Plumbum::UNDEFINED, **options) ⇒ OneProvider
constructor
A new instance of OneProvider.
-
#value ⇒ Object?
The provided value, or nil if the value is not defined.
- #value=(value) ⇒ Object
Methods included from Provider
#get, #has?, #options, #read_only?, #set, #write_once?
Constructor Details
#initialize(key, value: Plumbum::UNDEFINED, **options) ⇒ OneProvider
Returns a new instance of OneProvider.
14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/plumbum/one_provider.rb', line 14 def initialize(key, value: Plumbum::UNDEFINED, **) super() tools .assertions .validate_name(key, as: :key) @key = key.to_s @value = value @options = () end |
Instance Attribute Details
#key ⇒ String, Symbol (readonly)
Returns the key used to identify the provided value.
27 28 29 |
# File 'lib/plumbum/one_provider.rb', line 27 def key @key end |
Instance Method Details
#value ⇒ Object?
Returns the provided value, or nil if the value is not defined.
31 32 33 |
# File 'lib/plumbum/one_provider.rb', line 31 def value @value == Plumbum::UNDEFINED ? nil : @value end |
#value=(value) ⇒ Object
36 37 38 39 40 |
# File 'lib/plumbum/one_provider.rb', line 36 def value=(value) require_mutable(key) set_value(key, value) end |