class CiteProc::Ruby::Renderer::History
Attributes
maxsize[R]
memory[R]
Public Class Methods
new(state, maxsize = 10)
click to toggle source
# File lib/citeproc/ruby/renderer/history.rb, line 8 def initialize(state, maxsize = 10) @state, @maxsize, = state, maxsize @state.add_observer(self) @memory = Hash.new do |hash, key| hash[key] = [] end end
Public Instance Methods
bibliography()
click to toggle source
# File lib/citeproc/ruby/renderer/history.rb, line 33 def bibliography memory['bibliography'] end
citation()
click to toggle source
# File lib/citeproc/ruby/renderer/history.rb, line 29 def citation memory['citation'] end
discard()
click to toggle source
# File lib/citeproc/ruby/renderer/history.rb, line 37 def discard memory.clear self end
recall(mode)
click to toggle source
# File lib/citeproc/ruby/renderer/history.rb, line 25 def recall(mode) memory[mode][-1] end
update(action, mode, memories = {})
click to toggle source
# File lib/citeproc/ruby/renderer/history.rb, line 17 def update(action, mode, memories = {}) history = memory[mode] history << memories ensure history.shift if history.length > maxsize end