class Dry::Effects::DryAutoEffectsStrategies::Static
Private Instance Methods
define_readers(dynamic = false)
click to toggle source
# File lib/dry/effects/extensions/auto_inject.rb, line 27 def define_readers(dynamic = false) # rubocop:disable Style/OptionalBooleanParameter map = dependency_map.to_h cache = ::Concurrent::Map.new instance_mod.class_exec do map.each do |name, identifier| resolve = ::Dry::Effects::Constructors::Resolve(identifier) if dynamic define_method(name) { ::Dry::Effects.yield(resolve) } else define_method(name) do cache.fetch_or_store(name) do ::Dry::Effects.yield(resolve) end end end end end self end