Sha256: 238447af4d173176b37d07171be896b245f4c172d49af4f18c7972c5ffe52600

Contents?: true

Size: 894 Bytes

Versions: 23

Compression:

Stored size: 894 Bytes

Contents

require 'byebug/command'

module Byebug
  #
  # Send custom signals to the debugged program.
  #
  class KillCommand < Command
    self.allow_in_control = true

    def self.regexp
      /^\s* (?:kill) \s* (?:\s+(\S+))? \s*$/x
    end

    def self.description
      <<-EOD
        kill[ signal]

        #{short_description}

        Equivalent of Process.kill(Process.pid)
      EOD
    end

    def self.short_description
      'Sends a signal to the current process'
    end

    def execute
      if @match[1]
        signame = @match[1]

        unless Signal.list.member?(signame)
          return errmsg("signal name #{signame} is not a signal I know about\n")
        end
      else
        return unless confirm('Really kill? (y/n) ')

        signame = 'KILL'
      end

      processor.interface.close if 'KILL' == signame
      Process.kill(signame, Process.pid)
    end
  end
end

Version data entries

23 entries across 22 versions & 2 rubygems

Version Path
tdiary-5.0.5 vendor/bundle/gems/byebug-9.0.6/lib/byebug/commands/kill.rb
tdiary-5.0.5 vendor/bundle/gems/tdiary-5.0.4/vendor/bundle/gems/byebug-9.0.6/lib/byebug/commands/kill.rb
tdiary-5.0.4 vendor/bundle/gems/byebug-9.0.6/lib/byebug/commands/kill.rb
byebug-9.0.6 lib/byebug/commands/kill.rb
byebug-9.0.5 lib/byebug/commands/kill.rb
byebug-9.0.4 lib/byebug/commands/kill.rb
byebug-9.0.3 lib/byebug/commands/kill.rb
byebug-9.0.2 lib/byebug/commands/kill.rb
byebug-9.0.1 lib/byebug/commands/kill.rb
byebug-9.0.0 lib/byebug/commands/kill.rb
byebug-8.2.5 lib/byebug/commands/kill.rb
byebug-8.2.4 lib/byebug/commands/kill.rb
byebug-8.2.3 lib/byebug/commands/kill.rb
byebug-8.2.2 lib/byebug/commands/kill.rb
byebug-8.2.1 lib/byebug/commands/kill.rb
byebug-8.2.0 lib/byebug/commands/kill.rb
byebug-8.1.0 lib/byebug/commands/kill.rb
byebug-8.0.1 lib/byebug/commands/kill.rb
byebug-8.0.0 lib/byebug/commands/kill.rb
byebug-7.0.0 lib/byebug/commands/kill.rb