HEX
Server: Apache
System: Linux pdx1-shared-a1-29 6.18.39-grsec-noble+ #4 SMP Thu Jul 23 07:53:29 UTC 2026 x86_64
User: dh_bj99yp (22285841)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: //lib/ruby/3.2.0/irb/cmd/fork.rb
# frozen_string_literal: false
#
#   fork.rb -
#   	$Release Version: 0.9.6 $
#   	$Revision$
#   	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