# File lib/nanoc3/base/dependency_tracker.rb, line 174 def load_graph # Create new graph @graph = Nanoc3::DirectedGraph.new([ nil ] + @items) # Get store return if !File.file?(self.filename) store = PStore.new(self.filename) # Load dependencies store.transaction do # Verify version return if store[:version] != STORE_VERSION # Load vertices @previous_items = store[:vertices].map do |v| @items.find { |i| i.identifier == v } end # Load edges store[:edges].each do |edge| from_index, to_index = *edge from, to = @previous_items[from_index], @previous_items[to_index] @graph.add_edge(from, to) end end end