DIRECTORY IO USING[STREAM, TokenKind], OneCasabaParser USING[ParserTable], Rope USING[ROPE]; ThreeC4Support: CEDAR DEFINITIONS ~ { SeeProdLinkArray: TYPE ~ REF SeeProdLinkArrayBody; SeeProdLinkArrayBody: TYPE ~ RECORD [links: SEQUENCE nProds: CARDINAL OF SeeProcType]; SeeProcType: TYPE ~ PROC [nodes: LIST OF REF ANY, position: INT, length: INT] RETURNS [list: LIST OF REF ANY]; TokenLinkArray: TYPE ~ REF TokenLinkArrayBody; TokenLinkArrayBody: TYPE ~ ARRAY IO.TokenKind OF TokenProcType; TokenProcType: TYPE ~ PROC [text: Rope.ROPE, firstCharPosition: INT] RETURNS [tokenProc: REF ANY]; LinkProcType: TYPE ~ PROC [prodLinkArray: SeeProdLinkArray, tknLinkArray: TokenLinkArray]; ParseOneStream: PROC [from: IO.STREAM, table: OneCasabaParser.ParserTable, setUpLinks: LinkProcType, nProductions: INT, debugFlags: NAT, debuggingTextTo: IO.STREAM] RETURNS [REF ANY]; ShowParseSteps: NAT ~ 1; ShowFunctionGraphs: NAT ~ 2; GetSourceInfo: SIGNAL RETURNS [sourcePosition: INT, sourceLength: INT]; GetReportStream: SIGNAL RETURNS [stream: IO.STREAM]; }... ThreeC4Support.mesa: October 22, 1985 1:58:27 pm PDT Copyright Σ 1985, 1986, 1987 by Xerox Corporation. All rights reserved. Sturgis, May 9, 1986 10:22:46 am PDT Bill Jackson (bj) January 28, 1987 2:35:57 am PST debug control flags these signals are used for error reporting Κ– "cedar" style˜codešœ1Οk™4KšœH™HKšœ!™$Kšœ1™1—K˜š ˜ Kšœœœ ˜Kšœœ˜#Kšœœœ˜—K˜KšΟnœœ œ˜%˜Kšœœœ˜2Kš œœœ œ œœ˜VKšœ œœ œœœœ œ œœœœœœ˜nK˜Kšœœœ˜.Kš œœœœ œ˜?Kšœœœ œœœ œœ˜bK˜KšœœœA˜[KšžœœœœNœœœœœœœ˜·K˜Kšœ™K˜Kšžœœ˜Kšžœœ˜K˜Kšœ*™*K˜Kš ž œœœœœ˜GKš žœœœ œœ˜4—K˜Kšœ˜K˜—…—&G