<> <> DIRECTORY Rope; CompDeps: CEDAR DEFINITIONS = BEGIN SyntaxError: SIGNAL [sourceName: Rope.ROPE, index: INT]; <> ROPE: TYPE = Rope.ROPE; ModuleData: TYPE = REF ModuleDataRep; ModuleDataRep: TYPE = RECORD [ name: ROPE, sourceCreateTime, bcdCreateTime, latestDescendantBcdCreateTime: LONG CARDINAL _ 0, by, for: CARDINAL _ 0, sourceExists, bcdExists, willCompile, needed, someWillCompile: BOOLEAN _ FALSE, sourceType: SourceType _ mesa, dependsOn, suckers: ModuleDataList _ NIL]; SourceType: TYPE = {mesa, config}; ModuleDataList: TYPE = LIST OF ModuleData; AtomList: TYPE = LIST OF ATOM; Analyze: PROC [moduleName: ROPE]; AnalyzeWork: PROC [moduleData: ModuleData, for: CARDINAL]; GetModuleData: PROC [moduleName: ROPE] RETURNS [ModuleData]; NextFor: PROC RETURNS [CARDINAL]; END.