class Byebug::Skipper::FinishsCommand
this class is partially copy/pasted from Byebug::FinishsCommand
Public Class Methods
description()
click to toggle source
# File lib/byebug/skipper/finishs_command.rb, line 16 def self.description <<~TXT finishs | fins #{short_description} TXT end
regexp()
click to toggle source
# File lib/byebug/skipper/finishs_command.rb, line 8 def self.regexp /^ \s* fin(?:ish)?s \s* $/x end
short_description()
click to toggle source
# File lib/byebug/skipper/finishs_command.rb, line 12 def self.short_description "Same as `finish` but skips garbage frames, e.g. from gems" end
Public Instance Methods
execute()
click to toggle source
# File lib/byebug/skipper/finishs_command.rb, line 24 def execute frame = context.frame loop do frame = Byebug::Frame.new(context, frame.pos + 1) next if frame.c_frame? break if out_of_bounds?(frame.pos) break if not Byebug::Skipper.skip?("#{frame.file}:#{frame.line}") end context.step_out(frame.pos, false) context.frame = 0 processor.proceed! end