aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2005-11-16 08:53:26 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2005-11-16 08:53:26 +0000
commiteb1dd6a2067be548ebd4328c390d91e5abc6d81d (patch)
tree779381b9e16c4ad27c1989e7db89355bf443c31e /actionpack/lib/action_view
parent745ea39926fcedcf63f1d25e24da229db3a03260 (diff)
downloadrails-eb1dd6a2067be548ebd4328c390d91e5abc6d81d.tar.gz
rails-eb1dd6a2067be548ebd4328c390d91e5abc6d81d.tar.bz2
rails-eb1dd6a2067be548ebd4328c390d91e5abc6d81d.zip
Use Set instead of Array to speed up prototype helper include? calls. Closes #2880.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3055 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/lib/action_view')
-rw-r--r--actionpack/lib/action_view/helpers/prototype_helper.rb12
1 files changed, 7 insertions, 5 deletions
diff --git a/actionpack/lib/action_view/helpers/prototype_helper.rb b/actionpack/lib/action_view/helpers/prototype_helper.rb
index ce1d3a3750..74c32c7441 100644
--- a/actionpack/lib/action_view/helpers/prototype_helper.rb
+++ b/actionpack/lib/action_view/helpers/prototype_helper.rb
@@ -1,4 +1,5 @@
require File.dirname(__FILE__) + '/javascript_helper'
+require 'set'
module ActionView
module Helpers
@@ -25,11 +26,12 @@ module ActionView
# on the page in an Ajax response.
module PrototypeHelper
unless const_defined? :CALLBACKS
- CALLBACKS = [ :uninitialized, :loading, :loaded, :interactive,
- :complete, :failure, :success ] + (100..599).to_a
- AJAX_OPTIONS = [ :before, :after, :condition, :url, :asynchronous,
- :method, :insertion, :position, :form, :with, :update,
- :script ] + CALLBACKS
+ CALLBACKS = Set.new([ :uninitialized, :loading, :loaded,
+ :interactive, :complete, :failure, :success ] +
+ (100..599).to_a)
+ AJAX_OPTIONS = Set.new([ :before, :after, :condition, :url,
+ :asynchronous, :method, :insertion, :position,
+ :form, :with, :update, :script ]).merge(CALLBACKS)
end
# Returns a link to a remote action defined by <tt>options[:url]</tt>