module ConcurrentEnumerable::EnumerableInterface

Private Instance Methods

use(runner, methods) click to toggle source
# File lib/concurrent_enumerable/enumerable_interface.rb, line 5
    def use(runner, methods)
      enumerable_methods = Enumerable.instance_methods.map(&:to_s)
      enumerable_methods << 'each'
      methods.each do |method|
        next unless enumerable_methods.include?(method)
        class_eval <<-RUBY
        def #{method}(*args, &block)
          #{runner}(:#{method}, *args, &block)
        end
        RUBY
      end
    end