class Tsuga::Service::Clusterer::MutableSet

A Set-like structure, with in-place merging with, and removing of, another enumerable.

Public Class Methods

new(enum = nil) click to toggle source
# File lib/tsuga/service/clusterer.rb, line 186
def initialize(enum = nil)
  @_data = {}
  merge!(enum) if enum
end

Public Instance Methods

-(enum) click to toggle source
# File lib/tsuga/service/clusterer.rb, line 191
def -(enum)
  self.class.new.tap do |result|
    result.instance_variable_set(:@_data, @_data.dup)
    result.remove!(enum)
  end
end
each() { |k| ... } click to toggle source
# File lib/tsuga/service/clusterer.rb, line 198
def each
  @_data.each_key { |k| yield k }
end
merge!(enum) click to toggle source
# File lib/tsuga/service/clusterer.rb, line 202
def merge!(enum)
  enum.each { |key| @_data[key] = true }
end
remove!(enum) click to toggle source
# File lib/tsuga/service/clusterer.rb, line 206
def remove!(enum)
  enum.each { |key| @_data.delete(key) }
end