class DeadCodeDetector::Storage::MemoryBackend
Attributes
flush_immediately[RW]
pending_deletions[R]
Public Class Methods
new()
click to toggle source
# File lib/dead_code_detector/storage/memory_backend.rb, line 9 def initialize @mapping = Hash.new{|h,k| h[k] = Set.new } @pending_deletions = Hash.new{|h,k| h[k] = Set.new } end
Public Instance Methods
add(key, values)
click to toggle source
# File lib/dead_code_detector/storage/memory_backend.rb, line 18 def add(key, values) @mapping[key].merge(Array(values)) end
clear(key)
click to toggle source
# File lib/dead_code_detector/storage/memory_backend.rb, line 14 def clear(key) @mapping.delete(key) end
delete(key, value)
click to toggle source
# File lib/dead_code_detector/storage/memory_backend.rb, line 30 def delete(key, value) @pending_deletions[key] << value.to_s flush if flush_immediately end
flush()
click to toggle source
# File lib/dead_code_detector/storage/memory_backend.rb, line 35 def flush @pending_deletions.each do |key, values| @mapping[key].subtract(values) end @pending_deletions.clear end
get(key)
click to toggle source
# File lib/dead_code_detector/storage/memory_backend.rb, line 22 def get(key) if @pending_deletions.key?(key) @mapping[key] - @pending_deletions[key] else @mapping[key] end end