class Nanoc::Core::ItemRepRepo

Stores item reps (in memory).

@api private

Public Class Methods

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

Public Instance Methods

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

  @reps_by_item[rep.item] ||= []
  @reps_by_item[rep.item] << rep
end
[](item) click to toggle source
# File lib/nanoc/core/item_rep_repo.rb, line 32
def [](item)
  @reps_by_item.fetch(item, [])
end
each(&block) click to toggle source
# File lib/nanoc/core/item_rep_repo.rb, line 27
def each(&block)
  @reps.each(&block)
  self
end
to_a() click to toggle source
# File lib/nanoc/core/item_rep_repo.rb, line 23
def to_a
  @reps
end