diff options
Diffstat (limited to 'lib/vendor/excon/benchmarks/merging.rb')
-rw-r--r-- | lib/vendor/excon/benchmarks/merging.rb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/vendor/excon/benchmarks/merging.rb b/lib/vendor/excon/benchmarks/merging.rb new file mode 100644 index 0000000..7674e3f --- /dev/null +++ b/lib/vendor/excon/benchmarks/merging.rb @@ -0,0 +1,21 @@ +require 'rubygems' +require 'tach' + +Tach.meter(10_000) do + + tach('merge') do + default = { :a => 1, :b => 2 } + override = { :b => 3, :c => 4 } + override = default.merge(override) + end + + tach('loop') do + default = { :a => 1, :b => 2 } + override = { :b => 3, :c => 4 } + for key, value in default + override[key] ||= default[key] + end + override + end + +end |