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.60 date: 2024/02/09 11:12:10
user: stefan
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 receiver, the thread, the count, etc.)

copyright

COPYRIGHT (c) 2006 by eXept Software AG All Rights Reserved This software is furnished under a license and may be used only in accordance with the terms of that license and with the inclusion of the above copyright notice. This software may not be provided or otherwise made available to, or used by, any other person. No title to or ownership of the software is hereby transferred.

Class protocol:

instance creation
o  method: aMethod position: characterPosition line: aLineNr
return an initialized instance

o  new
return an initialized instance

queries
o  breakpointDescriptionClass
redefinable in subclasses

utilities
o  breakpointsDisabled

o  disableAllBreakpoints
global disabling of breakpoints (for miniDebugger)

o  reenableAllBreakpoints
turn off the global disabling of breakpoints (for miniDebugger)


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

o  method: aMethod

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.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Sat, 21 Dec 2024 16:16:58 GMT