class Yoda::Store::Objects::PatchSet::AddressIndex

Attributes

index[R]

@return [{ Symbol => Array<Symbol> }]

Public Class Methods

new() click to toggle source
# File lib/yoda/store/objects/patch_set.rb, line 10
def initialize
  @index = Hash.new
end

Public Instance Methods

delete(patch) click to toggle source

@param patch [Patch] @return [void]

# File lib/yoda/store/objects/patch_set.rb, line 36
def delete(patch)
  patch.keys.each do |key|
    (index[key.to_sym] || []).delete(patch.id.to_sym)
  end
end
get(address) click to toggle source

@param address [Symbol] @return [Set<Symbol>]

# File lib/yoda/store/objects/patch_set.rb, line 16
def get(address)
  index[address] ||= Set.new
end
keys() click to toggle source

@return [Set<Symbol>]

# File lib/yoda/store/objects/patch_set.rb, line 21
def keys
  index.keys
end
register(patch) click to toggle source

@param patch [Patch] @return [void]

# File lib/yoda/store/objects/patch_set.rb, line 27
def register(patch)
  patch.keys.each do |key|
    index[key.to_sym] ||= Set.new
    index[key.to_sym].add(patch.id.to_sym)
  end
end