Class: JsDuck::ParallelWrap
- Inherits:
-
Object
- Object
- JsDuck::ParallelWrap
- Defined in:
- lib/jsduck/parallel_wrap.rb
Overview
Wrapper around the parallel gem that falls back to simple Array#map and Array#each when :in_processes => 0 specified.
Instance Method Summary collapse
- #each(arr, &block) ⇒ Object
-
#initialize(cfg = {}) ⇒ ParallelWrap
constructor
Takes config object for parallel.
- #map(arr, &block) ⇒ Object
Constructor Details
#initialize(cfg = {}) ⇒ ParallelWrap
Takes config object for parallel
10 11 12 |
# File 'lib/jsduck/parallel_wrap.rb', line 10 def initialize(cfg = {}) @cfg = cfg end |
Instance Method Details
#each(arr, &block) ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/jsduck/parallel_wrap.rb', line 14 def each(arr, &block) if @cfg[:in_processes] == 0 arr.each &block else Parallel.each(arr, @cfg, &block) end end |
#map(arr, &block) ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/jsduck/parallel_wrap.rb', line 22 def map(arr, &block) if @cfg[:in_processes] == 0 arr.map &block else Parallel.map(arr, @cfg, &block) end end |