    # File lib/action_controller/caching.rb, line 273
          def cache_erb_fragment(block, name = {}, options = nil)
            unless perform_caching then block.call; return end

            buffer = eval("_erbout", 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