# File lib/action_controller/caching.rb, line 375 def cache_erb_fragment(block, name = {}, options = nil) unless perform_caching then block.call; return end buffer = eval(ActionView::Base.erb_variable, block.binding) if cache = read_fragment(name, options) buffer.concat(cache) else pos = buffer.length block.call write_fragment(name, buffer[pos..-1], options) end end