class Foxy::Adverb

Attributes

value[RW]

Public Class Methods

define(&block) click to toggle source
# File lib/foxy/adverb.rb, line 5
def self.define(&block)
  Class.new(self) { define_method(:and_then, &block) }
end
new(value) click to toggle source
# File lib/foxy/adverb.rb, line 9
def initialize(value)
  @value = value
end

Public Instance Methods

and_then() { |value| ... } click to toggle source
# File lib/foxy/adverb.rb, line 13
def and_then
  yield value
end
method_missing(m, *args, &block) click to toggle source
# File lib/foxy/adverb.rb, line 25
def method_missing(m, *args, &block)
  and_then { |instance| instance.public_send(m, *args, &block) }
end
tap(*args, &block) click to toggle source
# File lib/foxy/adverb.rb, line 21
def tap(*args, &block)
  method_missing(:tap, *args, &block)
end
then(&block) click to toggle source
# File lib/foxy/adverb.rb, line 17
def then(&block)
  self.class.new(&block)
end