class RickAndMorty::AsyncStream

Attributes

enumerable[R]

Public Class Methods

new(enumerable) click to toggle source
# File lib/rick_and_morty/async_stream.rb, line 5
def initialize(enumerable)
  @enumerable = enumerable
end

Public Instance Methods

map() { |item| ... } click to toggle source
# File lib/rick_and_morty/async_stream.rb, line 9
def map
  enumerable.map do |item|
    Thread.new { yield(item) }
  end.map(&:value)
end
sum(&block) click to toggle source
# File lib/rick_and_morty/async_stream.rb, line 15
def sum(&block)
  map(&block).inject(:+)
end