aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view/flows.rb
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2011-04-16 11:42:02 +0200
committerJosé Valim <jose.valim@gmail.com>2011-04-16 11:42:02 +0200
commiteec5d5db5d3f65e6508e2994378c602eb39325d7 (patch)
tree87cd7ea767c2e8be35a541935fc5b1e1ac5d46a1 /actionpack/lib/action_view/flows.rb
parentab105e6072d291d7024e4e645defa5eff31f6f21 (diff)
downloadrails-eec5d5db5d3f65e6508e2994378c602eb39325d7.tar.gz
rails-eec5d5db5d3f65e6508e2994378c602eb39325d7.tar.bz2
rails-eec5d5db5d3f65e6508e2994378c602eb39325d7.zip
Docs.
Diffstat (limited to 'actionpack/lib/action_view/flows.rb')
-rw-r--r--actionpack/lib/action_view/flows.rb17
1 files changed, 8 insertions, 9 deletions
diff --git a/actionpack/lib/action_view/flows.rb b/actionpack/lib/action_view/flows.rb
index 995a0b51e4..386a06511f 100644
--- a/actionpack/lib/action_view/flows.rb
+++ b/actionpack/lib/action_view/flows.rb
@@ -1,31 +1,35 @@
require 'active_support/core_ext/string/output_safety'
module ActionView
- class OutputFlow
+ class OutputFlow #:nodoc:
attr_reader :content
def initialize
@content = Hash.new { |h,k| h[k] = ActiveSupport::SafeBuffer.new }
end
+ # Called by _layout_for to read stored values.
def get(key)
@content[key]
end
+ # Called by each renderer object to set the layout contents.
def set(key, value)
- @content[key] = (ActiveSupport::SafeBuffer.new << value)
+ @content[key] = value
end
+ # Called by content_for
def append(key, value)
@content[key] << value
end
+ # Called by provide
def append!(key, value)
@content[key] << value
end
end
- class StreamingFlow < OutputFlow
+ class StreamingFlow < OutputFlow #:nodoc:
def initialize(view, fiber)
@view = view
@parent = nil
@@ -58,14 +62,9 @@ module ActionView
super
end
- # Set the contents for the given key. This is called
+ # Appends the contents for the given key. This is called
# by provides and resumes back to the fiber if it is
# the key it is waiting for.
- def set(key, value)
- @content[key] = (ActiveSupport::SafeBuffer.new << value)
- end
-
- # Append but also resume the fiber if it provided the right key.
def append!(key, value)
super
@fiber.resume if @waiting_for == key