Guest User

Untitled

a guest
Jul 20th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. module BT1
  2. class Store
  3. attr_accessor :data
  4.  
  5. def initialize
  6. @size = 0
  7. @data = []
  8. end
  9.  
  10. def size
  11. @data.size
  12. end
  13.  
  14. def each(&block)
  15. @data.each(&block)
  16. end
  17.  
  18. def update(new_data)
  19. new_store = []
  20. new_data.each do |new_rec|
  21. if old_rec = @data.find {|e| e == new_rec }
  22. new_rec.mark_reported if old_rec.reported?
  23. end
  24. new_store << new_rec
  25. end
  26. @data = new_store
  27. end
  28.  
  29. def fetch(a_number)
  30. unreported = []
  31. @data.each do |r|
  32. unless r.reported? || unreported.size == a_number
  33. unreported << r
  34. end
  35. end
  36. unreported[0...a_number].each {|u| u.mark_reported}
  37. end
  38.  
  39. end
  40. end
Add Comment
Please, Sign In to add comment