Sha256: be6a49ecb0fb577714d37cc1a0099e345d9d8786e2afe667768bdd788ed830fd
Contents?: true
Size: 547 Bytes
Versions: 2
Compression:
Stored size: 547 Bytes
Contents
# frozen_string_literal: true require 'dry/effects/effect' module Dry module Effects module Effects class Implicit < ::Module class ImplicitEffect < Effect option :dependency end def initialize(dependency) lookup = ImplicitEffect.new(type: :implicit, dependency: dependency) module_eval do define_method(dependency) do |*args| ::Dry::Effects.yield(lookup.payload(args[0])).(*args) end end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dry-effects-0.1.5 | lib/dry/effects/effects/implicit.rb |
dry-effects-0.1.4 | lib/dry/effects/effects/implicit.rb |