-- PPUtil.Mesa -- Russ Atkinson, August 6, 1982 11:10 am DIRECTORY PPOps USING [TableId], PPTree USING [Link], PrintTV USING [NullPutClosure, PutClosure], Rope USING [ROPE]; PPUtil: CEDAR DEFINITIONS = BEGIN OPEN Tree: PPTree, PrintTV, Rope; -- binary table management TableId: TYPE = PPOps.TableId; AcquireTable: UNSAFE PROC [PPOps.TableId] RETURNS [LONG POINTER]; ReleaseTable: PROC [PPOps.TableId]; -- compiler passes PassIndex: TYPE = {utilities, pass1, pass2, pass3, pass3p, pass4, pass5, debug}; PrefillSymbols: PROC; P1Unit: PROC RETURNS [BOOL]; -- debugging PrintTree: SAFE PROC [t: Tree.Link, put: PutClosure _ NullPutClosure]; -- printing PrettyPrint: SAFE PROC [root: Tree.Link, put: PutClosure _ NullPutClosure]; -- utility output SetOutput: PROC [put: PutClosure _ NullPutClosure] RETURNS [success: BOOL]; -- sets output procedure for output -- waits if already set, of course ShowCR: PROC []; ShowDecimal: PROC [x: INT]; ShowOctal: PROC [x: INT]; ShowRope: PROC [r: ROPE _ NIL]; ShowChar: PROC [CHAR]; ShowCharB: PROC [CHAR] RETURNS [BOOL]; -- swapping control MakeSwappable: PROC [module: PROGRAM, pass: PassIndex]; Pass1: PROGRAM; END. ΚK– "Mesa" style˜IprocšŠΟc9œΟk œ žœžœ>žœžœ žœž œžœžœ œ žœΟn œžœžœžœžœžœŸ œžœœžœEŸœžœŸœžœžœžœ œŸ œžœžœ6 œŸ œžœžœ>œŸ œžœ(žœ žœ$œ#œŸœžœŸ œžœžœŸ œžœžœŸœžœžœžœŸœžœžœŸ œžœžœžœžœœŸ œžœ žœžœžœ˜γ —…—ζ7