class Byebug::FrameCommand
Move to specific frames in the backtrace.
def self.description
def self.description <<-DESCRIPTION f[rame][ frame-number] #{short_description} If a frame number has been specified, to moves to that frame. Otherwise it moves to the newest frame. A negative number indicates position from the other end, so "frame -1" moves to the oldest frame, and "frame 0" moves to the newest frame. Without an argument, the command prints the current stack frame. Since the current position is redisplayed, it may trigger a resyncronization if there is a front end also watching over things. Use the "bt" command to find out where you want to go. DESCRIPTION end
def self.regexp
def self.regexp /^\s* f(?:rame)? (?:\s+(\S+))? \s*$/x end
def self.short_description
def self.short_description "Moves to a frame in the call stack" end
def execute
def execute return print(pr("frame.line", context.frame.to_hash)) unless @match[1] pos, err = get_int(@match[1], "Frame") return errmsg(err) unless pos switch_to_frame(pos) ListCommand.new(processor).execute if Setting[:autolist] end