1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
#
# fork.rb -
# $Release Version: 0.9.6 $
# $Revision: 23985 $
# by Keiju ISHITSUKA(keiju@ruby-lang.org)
#
# --
#
#
#
@RCS_ID='-$Id: fork.rb 23985 2009-07-07 11:36:20Z keiju $-'
module IRB
module ExtendCommand
class Fork<Nop
def execute(&block)
pid = send ExtendCommand.irb_original_method_name("fork")
unless pid
class<<self
alias_method :exit, ExtendCommand.irb_original_method_name('exit')
end
if iterator?
begin
yield
ensure
exit
end
end
end
pid
end
end
end
end
|