Class: Byebug::InfoCommand::BreakpointsCommand

Inherits:
Command
  • Object
show all
Defined in:
lib/byebug/commands/info/breakpoints.rb

Overview

Information about current breakpoints

Instance Attribute Summary

Attributes inherited from Command

#processor

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Command

#arguments, columnize, #context, #frame, help, #initialize, match, to_s

Methods included from Helpers::StringHelper

#camelize, #prettify

Constructor Details

This class inherits a constructor from Byebug::Command

Class Method Details

.descriptionObject



16
17
18
19
20
21
22
# File 'lib/byebug/commands/info/breakpoints.rb', line 16

def self.description
  <<-EOD
    inf[o] b[reakpoints]

    #{short_description}
  EOD
end

.regexpObject



12
13
14
# File 'lib/byebug/commands/info/breakpoints.rb', line 12

def self.regexp
  /^\s* b(?:reakpoints)? (?:\s+ (.+))? \s*$/x
end

.short_descriptionObject



24
25
26
# File 'lib/byebug/commands/info/breakpoints.rb', line 24

def self.short_description
  'Status of user settable breakpoints'
end

Instance Method Details

#executeObject



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/byebug/commands/info/breakpoints.rb', line 28

def execute
  return puts('No breakpoints.') if Byebug.breakpoints.empty?

  breakpoints = Byebug.breakpoints.sort_by(&:id)

  if @match[1]
    indices = @match[1].split(/ +/).map(&:to_i)
    breakpoints = breakpoints.select { |b| indices.member?(b.id) }
    if breakpoints.empty?
      return errmsg('No breakpoints found among list given')
    end
  end

  puts 'Num Enb What'
  breakpoints.each { |b| info_breakpoint(b) }
end