Class | Mechanize::History |
In: |
lib/mechanize/history.rb
|
Parent: | Array |
This class manages history for your mechanize object.
max_size | [RW] |
# File lib/mechanize/history.rb, line 7 7: def initialize(max_size = nil) 8: @max_size = max_size 9: @history_index = {} 10: end
# File lib/mechanize/history.rb, line 12 12: def initialize_copy(orig) 13: super 14: @history_index = orig.instance_variable_get(:@history_index).dup 15: end
# File lib/mechanize/history.rb, line 51 51: def pop 52: return nil if length == 0 53: page = super 54: remove_from_index(page) 55: page 56: end
# File lib/mechanize/history.rb, line 17 17: def push(page, uri = nil) 18: super(page) 19: @history_index[(uri ? uri : page.uri).to_s] = page 20: if @max_size && self.length > @max_size 21: while self.length > @max_size 22: self.shift 23: end 24: end 25: self 26: end
# File lib/mechanize/history.rb, line 42 42: def shift 43: return nil if length == 0 44: page = self[0] 45: self[0] = nil 46: super 47: remove_from_index(page) 48: page 49: end
# File lib/mechanize/history.rb, line 33 33: def visited_page(url) 34: @history_index[(url.respond_to?(:uri) ? url.uri : url).to_s] 35: end