file: PasPrivateVars.mesa
modified by Ramshaw, January 20, 1984 1:49 pm
written by McCreight, September 15, 1980 1:51 PM
Last changed by Pavel, May 29, 1985 6:22:52 pm PDT
May 29, 1985: Changed by Pavel to create a variable ``configExports'', to hold names of interfaces to be exported by the configuration.
DIRECTORY
Commander USING [Handle],
PasPrivate;
PasPrivateVars: CEDAR DEFINITIONS =
BEGIN
OPEN PasPrivate;
V a r i a b l e s
PascalIntegerName: ROPE; -- "INT"
PascalRealName: ROPE; -- "REAL"
Z: ZONE; -- for PasMesa's use
commandHandle: Commander.Handle;
ch: CHARACTER;
contextBufferLength: NAT = 50;
contextBuffer: REF TEXT;
contextBufferIndex: NAT;
positionInInputFile: INT;
nameOfInputFile: ROPE;
sy: Symbol;
op: Operator;
ident: Name;
sourceFileSeq: SourceFileSeqPtr; -- the sequence of source files
capitalizeChars: BOOLEAN;
capitalizeStrings: BOOLEAN;
targetLanguage: TargetLanguage;
pointerName: ROPE; -- either "POINTER TO " or "LONG POINTER TO " or "REF "
varPointerName: ROPE; --same for VAR parameters instead
paramsHaveNames: BOOLEAN;
useVarNamesForFileNames: BOOLEAN;
modularize: BOOLEAN;
defsModules: IdentifierSetPtr;
implModules: IdentifierSetPtr;
configImports: IdentifierSetPtr;
configExports: IdentifierSetPtr;
segments: IdentifierPtr;
segmentsTail: SegmentIdentifierTailPtr;
config: IdentifierPtr;
configTail: REF config IdentifierTail;
defaultDest: ARRAY ItemType OF DestinationPtr;
initCodeQPtr: OutputQueuePtr;
lexLevel: LexLevel;
display: ARRAY LexLevel OF DisplayEntryPtr;
outLevel: LexLevel;
outQStk: ARRAY LexLevel OF OutputQueuePtr;
outBuf: REF TEXT;
outBufMaxLength: NAT = 500;
integer, real, string: ScalarTypePtr; -- dummies
char: ScalarTypePtr;
boolean: ScalarTypePtr;
nil: PointerTypePtr;
integerId, realId, charId, booleanId, stringId: IdentifierPtr;
maxIntegerId, falseId, trueId, nilId: IdentifierPtr;
END. -- Pas
Pavel, May 29, 1985 6:21:29 pm PDT
changes to: