<> <> DIRECTORY IO, OpPrecParse, RoseTranslateTypes, ShowTime, TiogaFileOps, UserExec; RoseTranslateInsides: CEDAR DEFINITIONS = BEGIN OPEN RoseTranslateTypes; <> TokenClass: TYPE = OpPrecParse.TokenClass; TokenClassRep: TYPE = OpPrecParse.TokenClassRep; <> Circularity: ERROR; <> Job: TYPE = REF JobRep; JobRep: TYPE = RECORD [ exec: UserExec.ExecHandle, rootName: ROPE, path: LIST OF ROPE _ NIL, outRoot, symbolsRoot: TiogaFileOps.Ref, from, to, symbolsStream, typeStream, directoryStream, importsStream, openStream, regStream: IO.STREAM, --actually TiogaStreams log: IO.STREAM, parseTree: REF ANY _ NIL, errCount, warnCount, tokenCount: CARDINAL _ 0, directory, imports, opened, libbed: SymbolTable _ NIL, things: SymbolTable _ NIL, used: SymbolTable _ NIL, type: JobType _ TranslateJob, emptyDirectory, emptyImports, emptyOpen: BOOLEAN _ TRUE, start: ShowTime.Microseconds _ 0]; JobType: TYPE = {UpdateJob, TranslateJob}; signalTypes: SymbolTable; viewerLog: IO.STREAM; omitted: REF ANY; defaultST: SignalType; Op: TYPE = REF OpRep; OpRep: TYPE = RECORD [ name: ROPE, class: ARRAY BOOLEAN OF OpPrecParse.TokenClass, eatsCedar, terminal: BOOLEAN _ FALSE, childish: BOOLEAN _ TRUE, asArg: ARRAY BOOLEAN OF REF ANY _ ALL[NIL]]; <> Translate: PROC [exec: UserExec.ExecHandle, rootName: ROPE, pathIn: LIST OF ROPE, type: JobType] RETURNS [errCount: CARDINAL]; ParseExpression: PROC [job: Job, stoppable: BOOLEAN] RETURNS [expr: REF ANY, next: ROPE]; AddDirectory, AddImport, AddOpen: PROC [job: Job, name: ROPE]; AddSymbols: PROC [job: Job, rootName: ROPE]; AddCellClass: PROC [job: Job, cce: ccEntry]; ForceMesaType: PROC [mesaType: ROPE, on: SignalType] RETURNS [forced: SignalType]; DigestInterface: PROC [context: REF ANY, iel: InterfaceEltList] RETURNS [di: DigestedInterface]; InstantiateSignalType: PROC [context: REF ANY, name: ROPE, parms: REF ANY] RETURNS [sti: SignalTypeInvocation]; Complain: PROC [context: REF ANY, complaint: ROPE, v1, v2, v3, v4, v5: IO.Value _ [null[]]] RETURNS [reduced: REF ANY]; Whimper: PROC [context: REF ANY, complaint: ROPE, v1, v2, v3, v4, v5: IO.Value _ [null[]]]; MyBreak: IO.BreakProc; Close: PROC [job: Job]; END.