Class: Dry::Initializer::Option
- Defined in:
- lib/dry/initializer/option.rb
Instance Attribute Summary
Attributes inherited from Attribute
#coercer, #default, #optional, #reader, #source, #target
Instance Method Summary collapse
-
#coercer_hash ⇒ Object
part of __coercers__.
-
#default_hash ⇒ Object
part of __defaults__.
- #fast_setter ⇒ Object
-
#initializer_signature ⇒ Object
part of __initializer__ definition.
-
#presetter ⇒ Object
parts of __initalizer__.
- #safe_setter ⇒ Object
Methods inherited from Attribute
#==, dispatchers, #getter, #initialize, new, option, param
Constructor Details
This class inherits a constructor from Dry::Initializer::Attribute
Instance Method Details
#coercer_hash ⇒ Object
part of __coercers__
29 30 31 32 33 |
# File 'lib/dry/initializer/option.rb', line 29 def coercer_hash return {} unless coercer value = proc { |v| (v == Dry::Initializer::UNDEFINED) ? v : coercer.(v) } { :"option_#{source}" => value } end |
#default_hash ⇒ Object
part of __defaults__
24 25 26 |
# File 'lib/dry/initializer/option.rb', line 24 def default_hash default ? { :"option_#{source}" => default } : {} end |
#fast_setter ⇒ Object
17 18 19 20 21 |
# File 'lib/dry/initializer/option.rb', line 17 def fast_setter return safe_setter unless dispensable? "@#{target} = __options__.key?(:'#{source}') ? #{safe_coerced} : " \ "Dry::Initializer::UNDEFINED" end |
#initializer_signature ⇒ Object
part of __initializer__ definition
4 5 6 |
# File 'lib/dry/initializer/option.rb', line 4 def initializer_signature "**__options__" end |
#presetter ⇒ Object
parts of __initalizer__
9 10 11 |
# File 'lib/dry/initializer/option.rb', line 9 def presetter "@#{target} = Dry::Initializer::UNDEFINED" if dispensable? end |
#safe_setter ⇒ Object
13 14 15 |
# File 'lib/dry/initializer/option.rb', line 13 def safe_setter "@#{target} = #{safe_coerced}#{maybe_optional}" end |