SameBreakWorld.mesa
Copyright Ó 1990 by Xerox Corporation. All rights reserved.
Peter B. Kessler, August 6, 1990 4:47 pm PDT
An interface to supply BreakWorldArchitecture procedures for planting breakpoints in the same world.
DIRECTORY
BreakWorldArchitecture,
TargetArchitecture,
Rope,
IO;
SameBreakWorld: CEDAR DEFINITIONS ~ {
Handle: TYPE ~ REF HandleRep ← nullHandle;
HandleRep: TYPE;
nullHandle: Handle ~ NIL;
Create: PROCEDURE [] RETURNS [Handle];
Destroy: PROCEDURE [handle: Handle] RETURNS [];
You don't have to destroy the handles you get, but if you destroy one, don't use anything you got from that handle.
BreakWorld: PROCEDURE [handle: Handle] RETURNS [BreakWorldArchitecture.BreakWorld];
Creates a BreakWorld that points to the local world.
PCFromFileAndPosition: PROCEDURE [
handle: Handle,
mesaFilename: Rope.ROPE, position: INT, report: IO.STREAM]
RETURNS [address: CARD, correspondingPosition: INT];
Given a position in a mesa file returns the address of the code for position (as near as Cirio will give it), and the position corresponding to that address.
! NotFound
NotFound: ERROR;
}.