class Nanoc::Int::RuleMemoryStore

Stores rule memories for objects that can be run through a rule (item representations and layouts).

@api private

Public Class Methods

new() click to toggle source
Calls superclass method Nanoc::Int::Store.new
# File lib/nanoc/base/repos/rule_memory_store.rb, line 7
def initialize
  super('tmp/rule_memory', 1)

  @rule_memories = {}
end

Public Instance Methods

[](obj) click to toggle source

@param [Nanoc::Int::ItemRep, Nanoc::Int::Layout] obj The item representation or

the layout to get the rule memory for

@return [Array] The rule memory for the given object

# File lib/nanoc/base/repos/rule_memory_store.rb, line 17
def [](obj)
  @rule_memories[obj.reference]
end
[]=(obj, rule_memory) click to toggle source

@param [Nanoc::Int::ItemRep, Nanoc::Int::Layout] obj The item representation or

the layout to set the rule memory for

@param [Array] rule_memory The new rule memory to be stored

@return [void]

# File lib/nanoc/base/repos/rule_memory_store.rb, line 27
def []=(obj, rule_memory)
  @rule_memories[obj.reference] = rule_memory
end

Protected Instance Methods

data() click to toggle source

@see Nanoc::Int::Store#data

# File lib/nanoc/base/repos/rule_memory_store.rb, line 34
def data
  @rule_memories
end
data=(new_data) click to toggle source

@see Nanoc::Int::Store#data=

# File lib/nanoc/base/repos/rule_memory_store.rb, line 39
def data=(new_data)
  @rule_memories = new_data
end