class DEBUGGER__::Breakpoint
Attributes
key[R]
Public Class Methods
new(do_enable = true)
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 11 def initialize do_enable = true @deleted = false setup enable if do_enable end
Public Instance Methods
delete()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 48 def delete disable @deleted = true end
deleted?()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 53 def deleted? @deleted end
description()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 76 def description to_s end
disable()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 40 def disable @tp&.disable end
duplicable?()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 80 def duplicable? false end
enable()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 36 def enable @tp.enable end
enabled?()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 44 def enabled? @tp.enabled? end
generate_label(name)
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 94 def generate_label(name) colorize(" BP - #{name} ", [:YELLOW, :BOLD, :REVERSE]) end
oneshot?()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 28 def oneshot? defined?(@oneshot) && @oneshot end
safe_eval(b, expr)
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 18 def safe_eval b, expr b.eval(expr) rescue Exception => e puts "[EVAL ERROR]" puts " expr: #{expr}" puts " err: #{e} (#{e.class})" puts "Error caused by #{self}." nil end
setup()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 32 def setup raise "not implemented..." end
skip_path?(path)
click to toggle source
Calls superclass method
DEBUGGER__::SkipPathHelper#skip_path?
# File debug-1.4.0/lib/debug/breakpoint.rb, line 84 def skip_path?(path) if @path !path.match?(@path) else super end end
suspend()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 57 def suspend if @command provider, pre_cmds, do_cmds = @command nonstop = true if do_cmds cmds = [*pre_cmds&.split(';;'), *do_cmds&.split(';;')] SESSION.add_preset_commands provider, cmds, kick: false, continue: nonstop end ThreadClient.current.on_breakpoint @tp, self end
to_s()
click to toggle source
# File debug-1.4.0/lib/debug/breakpoint.rb, line 68 def to_s s = ''.dup s << " if: #{@cond}" if defined?(@cond) && @cond s << " pre: #{@command[1]}" if defined?(@command) && @command && @command[1] s << " do: #{@command[2]}" if defined?(@command) && @command && @command[2] s end