class Nanoc::Int::ItemRepRepo

Stores item reps (in memory).

@api private

Public Class Methods

new() click to toggle source
# File lib/nanoc/base/compilation/item_rep_repo.rb, line 8
def initialize
  @reps = []
  @reps_by_item = {}
end

Public Instance Methods

<<(rep) click to toggle source
# File lib/nanoc/base/compilation/item_rep_repo.rb, line 13
def <<(rep)
  @reps << rep

  @reps_by_item[rep.item] ||= []
  @reps_by_item[rep.item] << rep
end
[](item) click to toggle source
# File lib/nanoc/base/compilation/item_rep_repo.rb, line 29
def [](item)
  @reps_by_item.fetch(item, [])
end
each(&block) click to toggle source
# File lib/nanoc/base/compilation/item_rep_repo.rb, line 24
def each(&block)
  @reps.each(&block)
  self
end
to_a() click to toggle source
# File lib/nanoc/base/compilation/item_rep_repo.rb, line 20
def to_a
  @reps
end