eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'Breakpoint':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: Breakpoint


Inheritance:

   Object
   |
   +--Breakpoint

Package:
stx:libcomp
Category:
System-Compiler-Debugging
Version:
rev: 1.47 date: 2019/07/09 13:23:45
user: cg
file: Breakpoint.st directory: libcomp
module: stx stc-classLibrary: libcomp

Description:


statement breakpoint support.
Instances of me are placed into a (bytecode-) compiled method's
literal array and are sent #break messages when a statement
with a breakpoint is about to be executed.
The actual control is via the breakpoint's description, 
which contains further constraints about when the breakpoint should stop and enter the debugger
(for example: constraints on the reciever, the thread, the count, etc.)


Class protocol:

instance creation
o  new
return an initialized instance

queries
o  breakpointDescriptionClass
redefinable in subclasses

utilities
o  disableAllBreakpoints


Instance protocol:

accessing
o  description

o  description: aBreakpointDescription

o  icon
( an extension from the stx:libtool package )

o  isReached

o  isReached: aBoolean

o  line
the lineNr

o  line: lineArg

o  method: something

o  position

o  position: anInteger
Modified (format): / 02-08-2012 / 09:26:03 / cg

o  position: positionArg line: lineArg

hitting
o  break
invoked by the breakPoint's code (see BreakPointNode),
which is compiled into the code as:
pushLit <theBreakpoint>
send0 #break

usage example(s):

detect the break on the stack

o  breakPointMessageForContext: sender
withoutLeadingSeparators

initialization
o  initialize
Invoked when a new instance is created.

usage example(s):

super initialize.   -- commented since inherited method does nothing

printing & storing
o  inspectorValueStringInListFor: anInspector
returns a string to be shown in the inspector's list

o  printBreakpointNrInDebuggerOn: aStream
to be redefined for concrete debuggers
(some require a bpnt to be registered and use a handle or id to refer to them)

o  printOn: aStream
append a printed representation of the receiver to the argument, aStream

o  printPositionOrLineNumberOn: aStream

support
o  beInvisible
make this breakpoint hidden (in gutter)

o  beTracepoint
make this breakpoint a tracepoint

o  disable
disable this breakpoint

o  toggle
toggle this breakpoint

o  toggleTracing
toggle tracing of this breakpoint

testing
o  isEnabled
Bad coding here, state should be full object

o  isTracepoint

o  isVisible



ST/X 7.2.0.0; WebServer 1.670 at bd0aa1f87cdd.unknown:8081; Sat, 20 Apr 2024 12:32:43 GMT