class Byebug::WhereCommand - byebug-9.0.6 Documentation

# class Byebug::WhereCommand

Show current backtrace.

### Public Class Methods

description() click to toggle source

    # File lib/byebug/commands/where.rb, line 18
    def self.description
      <<-EOD
        w[here]|bt|backtrace

        #{short_description}

        Print the entire stack frame. Each frame is numbered; the most recent
        frame is 0. A frame number can be referred to in the "frame" command.
        "up" and "down" add or subtract respectively to frame numbers shown.
        The position of the current frame is marked with -->. C-frames hang
        from their most immediate Ruby frame to indicate that they are not
        navigable.
      EOD
    end

regexp() click to toggle source

    # File lib/byebug/commands/where.rb, line 14
    def self.regexp
      /^\s* (?:w(?:here)?|bt|backtrace) \s*$/x
    end

short_description() click to toggle source

    # File lib/byebug/commands/where.rb, line 33
    def self.short_description
      'Displays the backtrace'
    end

### Public Instance Methods

execute() click to toggle source

    # File lib/byebug/commands/where.rb, line 37
    def execute
      print_backtrace
    end

### Private Instance Methods

print_backtrace() click to toggle source

    # File lib/byebug/commands/where.rb, line 43
    def print_backtrace
      bt = prc('frame.line', (0...context.stack_size)) do |_, index|
        Frame.new(context, index).to_hash
      end

      print(bt)
    end