class Dry::Effects::Effect

Public Instance Methods

call(*args, **kwargs) click to toggle source
# File lib/dry/effects/effect.rb, line 37
def call(*args, **kwargs)
  if args.empty?
    if kwargs.empty?
      self
    else
      keywords(**kwargs)
    end
  else
    with(payload: args, keywords: @keywords.merge(kwargs))
  end
end
keywords(**keywords) click to toggle source
# File lib/dry/effects/effect.rb, line 29
def keywords(**keywords)
  if keywords.empty?
    @keywords
  else
    with(keywords: @keywords.merge(keywords))
  end
end
payload(*payload) click to toggle source
# File lib/dry/effects/effect.rb, line 21
def payload(*payload)
  if payload.empty?
    @payload
  else
    with(payload: payload)
  end
end