-- PPOps.Mesa
-- Russ Atkinson, August 6, 1982 5:05 pm

DIRECTORY
PPTree USING [Link],
PrintTV USING [PutClosure, NullPutClosure],
Rope USING [ROPE];

PPOps: CEDAR DEFINITIONS =
BEGIN OPEN PrintTV, Rope;

-- interface procedures

GetSource: PROC RETURNS [ROPE];

ParseStream: PROC
[source: ROPE, errPut, prettyPut, debugPut: PutClosure ← NullPutClosure]
RETURNS [root: PPTree.Link];
-- if any put routine # NIL then the appropriate output goes there
-- errPut is for syntax errors
-- prettyPut is for pretty printing the tree
-- debugPut is for debugging the tree (shows node structure)

-- module interfaces

TableId: TYPE = MACHINE DEPENDENT {parse, error, debug, (255)};
TableHandle: TYPE [2];

END.