Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module BT1
- class Store
- attr_accessor :data
- def initialize
- @size = 0
- @data = []
- end
- def size
- @data.size
- end
- def each(&block)
- @data.each(&block)
- end
- def update(new_data)
- new_store = []
- new_data.each do |new_rec|
- if old_rec = @data.find {|e| e == new_rec }
- new_rec.mark_reported if old_rec.reported?
- end
- new_store << new_rec
- end
- @data = new_store
- end
- def fetch(a_number)
- unreported = []
- @data.each do |r|
- unless r.reported? || unreported.size == a_number
- unreported << r
- end
- end
- unreported[0...a_number].each {|u| u.mark_reported}
- end
- end
- end
Add Comment
Please, Sign In to add comment