summaryrefslogtreecommitdiff
path: root/lib/irb/cmd/exit_forced_action.rb
blob: e5df75b682106d4d808b8bef9593a6959b28f630 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# frozen_string_literal: true

require_relative "nop"

module IRB
  # :stopdoc:

  module ExtendCommand
    class ExitForcedAction < Nop
      category "IRB"
      description "Exit the current process."

      def execute(*)
        IRB.irb_exit!
      rescue UncaughtThrowError
        Kernel.exit(0)
      end
    end
  end

  # :startdoc:
end