module AbstractController::Caching::Fragments

def combined_fragment_cache_key(key)

values, ending with the specified `key` value.
`ENV["RAILS_APP_VERSION"]` if set, followed by any controller-wide key prefix
with `:views`, followed by `ENV["RAILS_CACHE_ID"]` or
for use in reading, writing, or expiring a cached fragment. All keys begin
Given a key (as described in `expire_fragment`), returns a key array suitable
def combined_fragment_cache_key(key)
  head = self.class.fragment_cache_keys.map { |k| instance_exec(&k) }
  tail = key.is_a?(Hash) ? url_for(key).split("://").last : key
  cache_key = [:views, ENV["RAILS_CACHE_ID"] || ENV["RAILS_APP_VERSION"], head, tail]
  cache_key.flatten!(1)
  cache_key.compact!
  cache_key
end