-- SaffronCentralImpl.mesa
 -- Copyright س 1987 by Xerox Corporation.  All rights reserved.
 -- Generated by Rauen.pa at August 7, 1988 7:58:12 pm PDT
 --  using ThreeCasabaFour [1.2] of June 1, 1987 6:00:00 pm PDT

DIRECTORY
	IO,
	SaffronGenericDef,
	OneCasabaParser,
	FS,
	ThreeC4Support,
	SaffronCG7Def,
	SaffronCG6Def,
	SaffronCG5Def,
	SaffronCG4Def,
	SaffronCG3Def,
	SaffronCG2Def,
	SaffronCG1Def,
	SaffronCentralDef USING[];

SaffronCentralImpl: CEDAR PROGRAM IMPORTS IO, SaffronGenericDef, OneCasabaParser, FS, ThreeC4Support, SaffronCG7Def, SaffronCG6Def, SaffronCG5Def, SaffronCG4Def, SaffronCG3Def, SaffronCG2Def, SaffronCG1Def EXPORTS SaffronCentralDef= 
BEGIN
OPEN IO, SaffronGenericDef, OneCasabaParser, FS, ThreeC4Support, SaffronCG7Def, SaffronCG6Def, SaffronCG5Def, SaffronCG4Def, SaffronCG3Def, SaffronCG2Def, SaffronCG1Def;
ParseTable: OneCasabaParser.ParserTable _ NIL;

ParseOneStream: PUBLIC PROC[from: IO.STREAM, debugFlags: CARDINAL, debuggingTextTo: IO.STREAM] RETURNS[REF ANY] =
BEGIN
RETURN[ThreeC4Support.ParseOneStream[from, ParseTable, SetUpLinks, 469, debugFlags, debuggingTextTo]]
END;

SetUpLinks: PROC[prodLinkArray: SeeProdLinkArray, tknLinkArray: TokenLinkArray] =
BEGIN
SaffronCG1LinkProc[prodLinkArray, tknLinkArray];
SaffronCG2LinkProc[prodLinkArray, tknLinkArray];
SaffronCG3LinkProc[prodLinkArray, tknLinkArray];
SaffronCG4LinkProc[prodLinkArray, tknLinkArray];
SaffronCG5LinkProc[prodLinkArray, tknLinkArray];
SaffronCG6LinkProc[prodLinkArray, tknLinkArray];
SaffronCG7LinkProc[prodLinkArray, tknLinkArray];
SaffronGenericLinkProc[prodLinkArray, tknLinkArray];
END;


-- obtain parser table

	BEGIN
	tableStream: IO.STREAM _ FS.StreamOpen["SaffronCentral.kipperedParseTables"];
	ParseTable _ OneCasabaParser.BuildParserTableFromKipperedStream[tableStream];
	IO.Close[tableStream];
	END;

END..