<<>> <> <> <> <> <> 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; <> ownSymbols: PUBLIC SymbolTable.Base; <> 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; <> base: PUBLIC REF Alloc.BaseSeq; <> 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; <> source: PUBLIC FileParms.ActualId; sourceTokens: PUBLIC CARDINAL; pattern: PUBLIC FileParms.ActualId; -- old mob to match matched: PUBLIC BOOL; <> nErrors: PUBLIC CARDINAL; nWarnings: PUBLIC CARDINAL; bodyIndex: PUBLIC CBTIndex; -- current body textIndex: PUBLIC SourceMap.Loc; -- start index of phrase with error <<>> <> 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; }.