Class: Dry::Effects::Effects::Resolve
- Inherits:
-
Module
- Object
- Module
- Dry::Effects::Effects::Resolve
- Defined in:
- lib/dry/effects/effects/resolve.rb
Constant Summary collapse
- DependencyNameInvalid =
::Class.new(StandardError)
- VALID_NAME =
/([a-z_][a-zA-Z_0-9]*)$/- Resolve =
Effect.new(type: :resolve)
Instance Method Summary collapse
-
#initialize(*keys, **aliases) ⇒ Resolve
constructor
A new instance of Resolve.
Constructor Details
#initialize(*keys, **aliases) ⇒ Resolve
Returns a new instance of Resolve.
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/dry/effects/effects/resolve.rb', line 13 def initialize(*keys, **aliases) super() keys_aliased = keys.map { name_for(_1) }.zip(keys) module_eval do (keys_aliased + aliases.to_a).each do |name, key| define_method(name) { |&block| ::Dry::Effects.yield(Resolve.(key), &block) } end end end |