class Nanoc::Int::CompiledContentCache
Represents a cache than can be used to store already compiled content, to prevent it from being needlessly recompiled.
@api private
Public Class Methods
new()
click to toggle source
Calls superclass method
Nanoc::Int::Store.new
# File lib/nanoc/base/repos/compiled_content_cache.rb, line 7 def initialize super('tmp/compiled_content', 1) @cache = {} end
Public Instance Methods
[](rep)
click to toggle source
Returns the cached compiled content for the given item representation. This cached compiled content is a hash where the keys are the snapshot names and the values the compiled content at the given snapshot.
@param [Nanoc::Int::ItemRep] rep The item rep to fetch the content for
@return [Hash<Symbol,String>] A hash containing the cached compiled
content for the given item representation
# File lib/nanoc/base/repos/compiled_content_cache.rb, line 22 def [](rep) item_cache = @cache[rep.item.identifier] || {} item_cache[rep.name] end
[]=(rep, content)
click to toggle source
Sets the compiled content for the given representation.
@param [Nanoc::Int::ItemRep] rep The item representation for which to set
the compiled content
@param [Hash<Symbol,String>] content A hash containing the compiled
content of the given representation
@return [void]
# File lib/nanoc/base/repos/compiled_content_cache.rb, line 36 def []=(rep, content) @cache[rep.item.identifier] ||= {} @cache[rep.item.identifier][rep.name] = content end
Protected Instance Methods
data()
click to toggle source
# File lib/nanoc/base/repos/compiled_content_cache.rb, line 43 def data @cache end
data=(new_data)
click to toggle source
# File lib/nanoc/base/repos/compiled_content_cache.rb, line 47 def data=(new_data) @cache = new_data end