зеркало из https://github.com/github/ruby.git
17 строки
542 B
YAML
17 строки
542 B
YAML
|
prelude: |
|
||
|
has_hash_with_capa = Hash.instance_method(:initialize).parameters.include?([:key, :capacity])
|
||
|
strings_1k = 1_000.times.map { |i| -i.to_s.freeze }
|
||
|
strings_100k = 100_000.times.map { |i| -i.to_s.freeze }
|
||
|
benchmark:
|
||
|
new: Hash.new
|
||
|
new_with_capa_1k: |
|
||
|
h = has_hash_with_capa ? Hash.new(capacity: strings_1k.size) : {}
|
||
|
strings_1k.each do |x|
|
||
|
h[x] = true
|
||
|
end
|
||
|
new_with_capa_100k: |
|
||
|
h = has_hash_with_capa ? Hash.new(capacity: strings_100k.size) : {}
|
||
|
strings_100k.each do |x|
|
||
|
h[x] = true
|
||
|
end
|