3 4 5 6 7
# File 'lib/monads/monad.rb', line 3 def within(&block) and_then do |value| self.class.from_value(block.call(value)) end end