diff options
author | brainopia <brainopia@evilmartians.com> | 2015-04-02 01:53:49 +0300 |
---|---|---|
committer | brainopia <brainopia@evilmartians.com> | 2015-04-02 02:07:45 +0300 |
commit | cdac52e124769909b6cb5fce2c4d00e09d21e059 (patch) | |
tree | ec495f33893beb08670daf2ce70696e3171e847b /activerecord/lib/active_record/attribute_methods | |
parent | 4ba1376c608cc797c80402a73568744b1c855f67 (diff) | |
download | rails-cdac52e124769909b6cb5fce2c4d00e09d21e059.tar.gz rails-cdac52e124769909b6cb5fce2c4d00e09d21e059.tar.bz2 rails-cdac52e124769909b6cb5fce2c4d00e09d21e059.zip |
Prefer string patterns for gsub
https://github.com/ruby/ruby/pull/579 - there is a new optimization
since ruby 2.2
Previously regexp patterns were faster (since a string was converted to
regexp underneath anyway). But now string patterns are faster and
better reflect the purpose.
Benchmark.ips do |bm|
bm.report('regexp') { 'this is ::a random string'.gsub(/::/, '/') }
bm.report('string') { 'this is ::a random string'.gsub('::', '/') }
bm.compare!
end
# string: 753724.4 i/s
# regexp: 501443.1 i/s - 1.50x slower
Diffstat (limited to 'activerecord/lib/active_record/attribute_methods')
0 files changed, 0 insertions, 0 deletions