module Kernel - debug: Ruby Standard Library Documentation

# module Kernel

Put the following line in your login script (e.g. ~/.bash_profile) with modified path:

    export RUBYOPT="-r /path/to/debug/prelude ${RUBYOPT}"

trap

### Public Instance Methods

bb(*a, up_level: 0, **kw)
Alias for: debugger
debugger(*a, up_level: 0, **kw) click to toggle source

    # File debug-1.10.0/lib/debug/prelude.rb, line 11
    def debugger(*a, up_level: 0, **kw)
      begin
        require_relative 'version'
        cur_version = ::DEBUGGER__::VERSION
        require_relative 'frame_info'

        if !defined?(::DEBUGGER__::SO_VERSION) || ::DEBUGGER__::VERSION != ::DEBUGGER__::SO_VERSION
          ::Object.send(:remove_const, :DEBUGGER__)
          raise LoadError
        end
        require_relative 'session'
        up_level += 1
      rescue LoadError
        $LOADED_FEATURES.delete_if{|e|
          e.start_with?(__dir__) || e.end_with?('debug/debug.so')
        }
        require 'debug/session'
        require 'debug/version'
        ::DEBUGGER__.info "Can not activate debug #{cur_version} specified by debug/prelude.rb. Activate debug #{DEBUGGER__::VERSION} instead."
        up_level += 1
      end

      ::DEBUGGER__::start no_sigint_hook: true, nonstop: true

      begin
        debugger(*a, up_level: up_level, **kw)
        self
      rescue ArgumentError # for 1.2.4 and earlier
        debugger(*a, **kw)
        self
      end
    end

Also aliased as: bb, bb