Class: Dry::Initializer::Param
- Defined in:
- lib/dry/initializer/param.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, new, option, param
Instance Method Details
#coercer_hash ⇒ Object
part of __coercers__
25 26 27 28 29 |
# File 'lib/dry/initializer/param.rb', line 25 def coercer_hash return {} unless coercer value = proc { |v| (v == Dry::Initializer::UNDEFINED) ? v : coercer.(v) } { :"param_#{target}" => value } end |
#default_hash ⇒ Object
part of __defaults__
20 21 22 |
# File 'lib/dry/initializer/param.rb', line 20 def default_hash default ? { :"param_#{target}" => default } : {} end |
#fast_setter ⇒ Object
15 16 17 |
# File 'lib/dry/initializer/param.rb', line 15 def fast_setter safe_setter end |
#initializer_signature ⇒ Object
part of __initializer__ definition
4 5 6 |
# File 'lib/dry/initializer/param.rb', line 4 def initializer_signature optional ? "#{target} = Dry::Initializer::UNDEFINED" : target end |
#presetter ⇒ Object
parts of __initalizer__
9 |
# File 'lib/dry/initializer/param.rb', line 9 def presetter; end |
#safe_setter ⇒ Object
11 12 13 |
# File 'lib/dry/initializer/param.rb', line 11 def safe_setter "@#{target} = #{maybe_coerced}" end |