summaryrefslogtreecommitdiff
path: root/lib/irb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/irb')
-rw-r--r--lib/irb/ruby-lex.rb12
-rw-r--r--lib/irb/slex.rb4
2 files changed, 8 insertions, 8 deletions
diff --git a/lib/irb/ruby-lex.rb b/lib/irb/ruby-lex.rb
index 26b0b3b7c2..8d5cb47580 100644
--- a/lib/irb/ruby-lex.rb
+++ b/lib/irb/ruby-lex.rb
@@ -69,12 +69,12 @@ class RubyLex
# io functions
def set_input(io, p = nil)
@io = io
- if p.kind_of?(Proc)
+ if p.respond_to?(:call)
@input = p
elsif iterator?
- @input = proc
+ @input = Block.new
else
- @input = proc{@io.gets}
+ @input = Block.new{@io.gets}
end
end
@@ -183,11 +183,11 @@ class RubyLex
end
private :buf_input
- def set_prompt(p = proc)
- if p.kind_of?(Proc)
+ def set_prompt(p = Block.new)
+ if p.respond_to?(:call)
@prompt = p
else
- @prompt = proc{print p}
+ @prompt = Block.new{print p}
end
end
diff --git a/lib/irb/slex.rb b/lib/irb/slex.rb
index 1cf23255ad..5dc496d893 100644
--- a/lib/irb/slex.rb
+++ b/lib/irb/slex.rb
@@ -33,13 +33,13 @@ class SLex
def def_rule(token, preproc = nil, postproc = nil)
# print node.inspect, "\n" if SLex.debug?
- postproc = proc if iterator?
+ postproc = Block.new if iterator?
node = create(token, preproc, postproc)
end
def def_rules(*tokens)
if iterator?
- p = proc
+ p = Block.new
end
for token in tokens
def_rule(token, nil, p)