aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorschneems <richard.schneeman+foo@gmail.com>2018-08-22 11:17:50 -0500
committerschneems <richard.schneeman+foo@gmail.com>2018-08-22 11:17:50 -0500
commit4efb319141b52c08a181050eb74ff52eec1f3671 (patch)
tree47384194ad1e370c5cda833cc7aa8380ba5256e9 /actionpack
parentb7294944547c984bb92864493435b516e68bd623 (diff)
downloadrails-4efb319141b52c08a181050eb74ff52eec1f3671.tar.gz
rails-4efb319141b52c08a181050eb74ff52eec1f3671.tar.bz2
rails-4efb319141b52c08a181050eb74ff52eec1f3671.zip
Two fewer array allocations on action_methods
Instead of creating new arrays for `uniq` and `map` we can instead modify the array in place.
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/abstract_controller/base.rb5
1 files changed, 4 insertions, 1 deletions
diff --git a/actionpack/lib/abstract_controller/base.rb b/actionpack/lib/abstract_controller/base.rb
index a312af6715..9783c19835 100644
--- a/actionpack/lib/abstract_controller/base.rb
+++ b/actionpack/lib/abstract_controller/base.rb
@@ -78,7 +78,10 @@ module AbstractController
# Except for public instance methods of Base and its ancestors
internal_methods +
# Be sure to include shadowed public instance methods of this class
- public_instance_methods(false)).uniq.map(&:to_s)
+ public_instance_methods(false))
+
+ methods.uniq!
+ methods.map!(&:to_s)
methods.to_set
end