class DeDuplicator

Attributes

base_list[RW]
new_additions[RW]

Public Class Methods

new( base_list=[] ) click to toggle source
# File lib/de_duplicator.rb, line 5
    def initialize( base_list=[] )
            @base_list = base_list.flatten.uniq
@new_additions = []
    end

Public Instance Methods

get_duplicates(list) click to toggle source
# File lib/de_duplicator.rb, line 20
      def get_duplicates(list)
  flat_list = list.flatten
              duplicates = (@base_list & flat_list)
              update_base_list(flat_list)
              duplicates
end
remove_recent_additions!() click to toggle source
# File lib/de_duplicator.rb, line 27
def remove_recent_additions!
  @base_list -= @new_additions
end
unique_list() click to toggle source
# File lib/de_duplicator.rb, line 16
def unique_list
        base_list
end
update_base_list(list) click to toggle source
# File lib/de_duplicator.rb, line 10
    def update_base_list(list)
flat_list = list.flatten
@new_additions = flat_list - (@base_list & flat_list)
            @base_list = (@base_list + @new_additions).flatten.uniq
    end