aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_dispatch/middleware/flash.rb26
1 files changed, 24 insertions, 2 deletions
diff --git a/actionpack/lib/action_dispatch/middleware/flash.rb b/actionpack/lib/action_dispatch/middleware/flash.rb
index 0b501e9643..2adbce031b 100644
--- a/actionpack/lib/action_dispatch/middleware/flash.rb
+++ b/actionpack/lib/action_dispatch/middleware/flash.rb
@@ -73,8 +73,6 @@ module ActionDispatch
class FlashHash
include Enumerable
- delegate :[], :keys, :key?, :empty?, :clear, :each, :to => :@flashes
-
def initialize #:nodoc:
@used = Set.new
@closed = false
@@ -96,12 +94,24 @@ module ActionDispatch
@flashes[k] = v
end
+ def [](k)
+ @flashes[k]
+ end
+
def update(h) #:nodoc:
h.keys.each { |k| keep(k) }
@flashes.update h
self
end
+ def keys
+ @flashes.keys
+ end
+
+ def key?(name)
+ @flashes.key? name
+ end
+
def delete(key)
@flashes.delete key
self
@@ -111,6 +121,18 @@ module ActionDispatch
@flashes.dup
end
+ def empty?
+ @flashes.empty?
+ end
+
+ def clear
+ @flashes.clear
+ end
+
+ def each(&block)
+ @flashes.each(&block)
+ end
+
alias :merge! :update
def replace(h) #:nodoc: