Revision 5096e8a9ac03848fbcf4adc01cac11714428b025 authored by Delson Lima on 12 April 2018, 18:24:55 UTC, committed by jekyllbot on 12 April 2018, 18:24:55 UTC
Merge pull request 6782
1 parent c9346ef
flat-map
#!/usr/bin/env ruby
require 'benchmark/ips'
enum = (0..50).to_a
nested = enum.map { |i| [i] }
def do_thing(blah)
blah * 1
end
Benchmark.ips do |x|
x.report('.map.flatten with nested arrays') { nested.map { |i| do_thing(i) }.flatten(1) }
x.report('.flat_map with nested arrays') { nested.flat_map { |i| do_thing(i) } }
x.report('.map.flatten with no nested arrays') { enum.map { |i| do_thing(i) }.flatten(1) }
x.report('.flat_map with no nested arrays') { enum.flat_map { |i| do_thing(i) } }
end
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...