From 735556d6ccbce382724b7c5dc63109c9b324d1ca Mon Sep 17 00:00:00 2001 From: Amadeus Folego Date: Mon, 22 Aug 2016 20:36:45 -0300 Subject: Improve TagHelper#tag_option performance Freeze string literals and use String instead of Regex inside gsub call. This should improve performance from 20% up to 50% on most cases. --- actionview/lib/action_view/helpers/tag_helper.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'actionview') diff --git a/actionview/lib/action_view/helpers/tag_helper.rb b/actionview/lib/action_view/helpers/tag_helper.rb index 4950f272a4..24c6d03cd1 100644 --- a/actionview/lib/action_view/helpers/tag_helper.rb +++ b/actionview/lib/action_view/helpers/tag_helper.rb @@ -86,11 +86,11 @@ module ActionView def tag_option(key, value, escape) if value.is_a?(Array) - value = escape ? safe_join(value, " ") : value.join(" ") + value = escape ? safe_join(value, " ".freeze) : value.join(" ".freeze) else value = escape ? ERB::Util.unwrapped_html_escape(value) : value.to_s end - %(#{key}="#{value.gsub(/"/, '"'.freeze)}") + %(#{key}="#{value.gsub('"'.freeze, '"'.freeze)}") end private -- cgit v1.2.3