Sha256: 36bb1990445f2fbc96b574155677884a8053cd4edf3efc4457f4ee5b4dc2c497
Contents?: true
Size: 566 Bytes
Versions: 2
Compression:
Stored size: 566 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) super() 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.3.0 | lib/dry/effects/effects/implicit.rb |
dry-effects-0.2.0 | lib/dry/effects/effects/implicit.rb |