-- file PPLeaves.Mesa
-- last modified by Satterthwaite, January 28, 1981 12:41 PM
-- last edit by Russ Atkinson, 1-Jun-81 16:25:22
-- last edited by Suzuki, 26-Aug-81 11:30:37
DIRECTORY
PPCommentTable USING [Index, Text],
Rope USING [Ref];
PPLeaves: DEFINITIONS =
BEGIN OPEN PPCommentTable;
Leaf: TYPE = REF ANY; -- union of types below
Index: TYPE = PPCommentTable.Index;
Text: TYPE = PPCommentTable.Text;
HTIndex: TYPE = REF HTNode;
HTNode: TYPE = RECORD[index: Index, name: Text];
HTNull: HTIndex = NIL;
ISEIndex: TYPE = Rope.Ref;
LTIndex: TYPE = REF LTNode;
LTNode: TYPE = RECORD[
index: Index,
value: REF ANY,
literal: Text];
STIndex: TYPE = Text; -- for now
-- Creation of index
IdFromRope: PROC [r: Rope.Ref, index: Index] RETURNS [HTIndex];
-- semantic entry table declarations
TypeClass: TYPE = {
mode,
basic,
enumerated,
record,
ref,
array,
arraydesc,
transfer,
definition,
union,
sequence,
relative,
subrange,
long,
real,
opaque,
zone,
any,
nil};
TransferMode: TYPE = {proc, port, signal, error, process, program, none};
END.