Sha256: fc9dabf86e8aee7836df3c14dda42c0eaa2c3fc3bdad8bd0daf02e580a47f028
Contents?: true
Size: 982 Bytes
Versions: 16
Compression:
Stored size: 982 Bytes
Contents
require 'jsduck/util/os' require 'parallel' module JsDuck module Util # Wrapper around the parallel gem that falls back to simple # Array#map and Array#each when :in_processes => 0 specified. class Parallel @@in_processes = nil # Configures the logger to use as many processes as set in # command line options. When in Windows, turns the parallel # processing off by default. def self.configure(opts) @@in_processes = 0 if Util::OS::windows? @@in_processes = opts.processes if opts.processes end def self.each(arr, &block) if @@in_processes == 0 arr.each &block else ::Parallel.each(arr, {:in_processes => @@in_processes}, &block) end end def self.map(arr, &block) if @@in_processes == 0 arr.map &block else ::Parallel.map(arr, {:in_processes => @@in_processes}, &block) end end end end end
Version data entries
16 entries across 16 versions & 3 rubygems