class Travelog::Diff

Constants

ADD_LINE
DEL_LINE

Attributes

append[R]
delete[R]

Public Class Methods

new() click to toggle source
# File lib/travelog.rb, line 7
def initialize
  @delete = {}
  @append = {}
end

Public Instance Methods

<<(line) click to toggle source
# File lib/travelog.rb, line 14
def <<(line)
  case line.strip
  when ADD_LINE
    append_set($1, $2)
  when DEL_LINE
    delete_set($1, $2)
  end
end
report() click to toggle source
# File lib/travelog.rb, line 23
def report
  puts "***** CHANGED GEM'S *****"
  (append.keys & delete.keys).each do |k|
    puts "#{k} #{append[k]}(was #{delete[k]})"
  end

  puts
  puts "***** INSTALLED GEM'S *****"
  (append.keys - delete.keys).each do |k|
    puts "#{k} #{append[k]}"
  end

  puts
  puts "***** UNINSTALLED GEM'S *****"
  (delete.keys - append.keys).each do |k|
    puts "#{k} #{delete[k]}"
  end
end

Private Instance Methods

append_set(name, version) click to toggle source
# File lib/travelog.rb, line 43
def append_set(name, version)
  append[name] = version
end
delete_set(name, version) click to toggle source
# File lib/travelog.rb, line 47
def delete_set(name, version)
  delete[name] = version
end