3
# $Release Version: 0.9.5$
5
# $Date: 2007-02-13 08:01:19 +0900 (Tue, 13 Feb 2007) $
6
# by Keiju ISHITSUKA(keiju@ruby-lang.org)
17
NOPRINTING_IVARS.push "@eval_history_values"
19
alias _set_last_value set_last_value
21
def set_last_value(value)
22
_set_last_value(value)
24
# @workspace.evaluate self, "_ = IRB.CurrentContext.last_value"
25
if @eval_history #and !@eval_history_values.equal?(llv)
26
@eval_history_values.push @line_no, @last_value
27
@workspace.evaluate self, "__ = IRB.CurrentContext.instance_eval{@eval_history_values}"
33
attr_reader :eval_history
36
if defined?(@eval_history) && @eval_history
37
@eval_history_values.size(no)
39
@eval_history_values = History.new(no)
40
IRB.conf[:__TMP__EHV__] = @eval_history_values
41
@workspace.evaluate(self, "__ = IRB.conf[:__TMP__EHV__]")
42
IRB.conf.delete(:__TMP_EHV__)
45
@eval_history_values = nil
52
@RCS_ID='-$Id: history.rb 11708 2007-02-12 23:01:19Z shyouhei $-'
54
def initialize(size = 16)
60
if size != 0 && size < @size
61
@contents = @contents[@size - size .. @size]
69
@contents.find{|no, val| no == idx}[1]
79
@contents.push [no, val]
80
@contents.shift if @size != 0 && @contents.size > @size
83
alias real_inspect inspect
90
unless (last = @contents.pop)[1].equal?(self)
94
str = @contents.collect{|no, val|
96
"#{no} ...self-history..."
98
"#{no} #{val.inspect}"
104
@contents.push last if last