MimDataImpl.mesa
Copyright Ó 1985, 1986, 1987, 1988, 1991 by Xerox Corporation. All rights reserved.
Satterthwaite, June 18, 1986 9:50:31 am PDT
Russ Atkinson (RRA) May 17, 1989 12:17:05 pm PDT
JKF August 15, 1988 11:18:29 am PDT
DIRECTORY
Alloc USING [BaseSeq],
FileParms USING [ActualId],
OSMiscOps USING [Stamp],
MobDefs USING [MTHandle, SGRecord, VersionStamp],
MimData,
Rope USING [ROPE],
SourceMap USING [Loc],
Symbols USING [CBTIndex, CTXIndex],
SymbolSegment USING [FGTEntry],
SymbolTable USING [Base];
MimDataImpl: PROGRAM EXPORTS MimData = {
OPEN Symbols;
shared instance of SymbolTable
ownSymbols: PUBLIC SymbolTable.Base;
global info describing module
interface: PUBLIC BOOL;  -- interface module
moduleCtx: PUBLIC CTXIndex; -- module identifiers
importCtx: PUBLIC CTXIndex; -- import id context
exportCtx: PUBLIC CTXIndex; -- export id context
mainCtx: PUBLIC CTXIndex; -- main program's context
nBodies: PUBLIC CARDINAL;
nInnerBodies: PUBLIC CARDINAL;
nSigCodes: PUBLIC CARDINAL;
defBodyLimit: PUBLIC CARD;
linkCount: PUBLIC CARDINAL; -- global control links (externals, etc)
cedar: PUBLIC BOOL;
monitored: PUBLIC BOOL;
stopping: PUBLIC BOOL;
scratch storage
base: PUBLIC REF Alloc.BaseSeq;
compilation options
LetterSwitches: TYPE = PACKED ARRAY CHAR['a..'z] OF BOOL;
switches: PUBLIC PACKED ARRAY CHAR['a..'z] OF BOOL;
checks: PUBLIC PACKED ARRAY CHAR['a..'z] OF BOOL;
input
source: PUBLIC FileParms.ActualId;
sourceTokens: PUBLIC CARDINAL;
pattern: PUBLIC FileParms.ActualId; -- old mob to match
matched: PUBLIC BOOL;
variables used for error reporting
nErrors: PUBLIC CARDINAL;
nWarnings: PUBLIC CARDINAL;
bodyIndex: PUBLIC CBTIndex; -- current body
textIndex: PUBLIC SourceMap.Loc; -- start index of phrase with error
output
compilerVersion: PUBLIC MobDefs.VersionStamp;
objectVersion: PUBLIC MobDefs.VersionStamp;
objectStamp: PUBLIC OSMiscOps.Stamp;
globalFrameSize: PUBLIC CARD;
fgTable: PUBLIC LONG DESCRIPTOR FOR ARRAY OF SymbolSegment.FGTEntry ¬ NIL;
mobSeg, codeSeg, symSeg: PUBLIC MobDefs.SGRecord;
mtRoot: PUBLIC MobDefs.MTHandle ¬ NIL;
mtRootSize: PUBLIC CARDINAL;
fixupLoc: PUBLIC CARD;
}.