aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/metal/strong_parameters.rb
diff options
context:
space:
mode:
authorXavier Noria <fxn@hashref.com>2014-06-07 13:30:03 +0200
committerXavier Noria <fxn@hashref.com>2014-06-07 13:30:03 +0200
commitf84d081faf6812a947aebf3e67978f3d3bbb31f0 (patch)
tree5a3912492351f52620b2c199220994c08b73dc0f /actionpack/lib/action_controller/metal/strong_parameters.rb
parentf712f89961b64b61064d99d33dbbfd1903b189d4 (diff)
downloadrails-f84d081faf6812a947aebf3e67978f3d3bbb31f0.tar.gz
rails-f84d081faf6812a947aebf3e67978f3d3bbb31f0.tar.bz2
rails-f84d081faf6812a947aebf3e67978f3d3bbb31f0.zip
adds some details to the rationale of converted_arrays [ci skip]
Diffstat (limited to 'actionpack/lib/action_controller/metal/strong_parameters.rb')
-rw-r--r--actionpack/lib/action_controller/metal/strong_parameters.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/metal/strong_parameters.rb b/actionpack/lib/action_controller/metal/strong_parameters.rb
index 55954d0f37..c3c3e4c4f1 100644
--- a/actionpack/lib/action_controller/metal/strong_parameters.rb
+++ b/actionpack/lib/action_controller/metal/strong_parameters.rb
@@ -129,6 +129,10 @@ module ActionController
# Attribute that keeps track of converted arrays, if any, to avoid double
# looping in the common use case permit + mass-assignment. Defined in a
# method to instantiate it only if needed.
+ #
+ # Testing membership still loops, but it's going to be faster than our own
+ # loop that converts values. Also, we are not going to build a new array
+ # object per fetch.
def converted_arrays
@converted_arrays ||= Set.new
end