mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Use &= instead of select with include?
The performance is almost the same with both implementations but this is clear. Before this patch: Calculating ------------------------------------- small erb template 1452 i/100ms ------------------------------------------------- small erb template 17462.1 (±13.3%) i/s - 85668 in 5.031395s .Calculating ------------------------------------- small erb template with 1 partial 887 i/100ms ------------------------------------------------- small erb template with 1 partial 8899.6 (±18.8%) i/s - 42576 in 5.009453s .Calculating ------------------------------------- small erb template with 2 partials 666 i/100ms ------------------------------------------------- small erb template with 2 partials 6821.5 (±8.8%) i/s - 33966 in 5.020791s After the patch: Calculating ------------------------------------- small erb template 1479 i/100ms ------------------------------------------------- small erb template 15956.6 (±7.6%) i/s - 79866 in 5.036001s .Calculating ------------------------------------- small erb template with 1 partial 841 i/100ms ------------------------------------------------- small erb template with 1 partial 9242.2 (±6.9%) i/s - 46255 in 5.029497s .Calculating ------------------------------------- small erb template with 2 partials 615 i/100ms ------------------------------------------------- small erb template with 2 partials 6524.7 (±6.8%) i/s - 32595 in 5.020456s You can find the benchmark code at https://gist.github.com/rafaelfranca/dee31120cfdb1ddc3b56
This commit is contained in:
parent
b5fbcc5d52
commit
9bbb3ca306
1 changed files with 1 additions and 4 deletions
|
@ -66,10 +66,7 @@ module ActionView
|
|||
def self.get(details)
|
||||
if details[:formats]
|
||||
details = details.dup
|
||||
syms = Mime::SET.symbols
|
||||
details[:formats] = details[:formats].select { |v|
|
||||
syms.include? v
|
||||
}
|
||||
details[:formats] &= Mime::SET.symbols
|
||||
end
|
||||
@details_keys[details] ||= new
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue