ruby/lib/irb/cmd/fork.rb
2023-01-11 22:29:10 +00:00

34 lines
613 B
Ruby

# frozen_string_literal: false
#
# fork.rb -
# by Keiju ISHITSUKA(keiju@ruby-lang.org)
#
require_relative "nop"
module IRB
# :stopdoc:
module ExtendCommand
class Fork < Nop
def execute
pid = __send__ ExtendCommand.irb_original_method_name("fork")
unless pid
class << self
alias_method :exit, ExtendCommand.irb_original_method_name('exit')
end
if block_given?
begin
yield
ensure
exit
end
end
end
pid
end
end
end
# :startdoc:
end