<> DIRECTORY Rope USING [ROPE], RTBasic USING [TV, Type], UserExec USING [ExecHandle] ; BasicUserExec: CEDAR DEFINITIONS = BEGIN TV: TYPE = RTBasic.TV; Type: TYPE = RTBasic.Type; AttachTypeCorrectionProc: PROCEDURE [type: Type, proc: CorrectionProc]; -- associates a CorrectionProc with a type. CorrectionProc: TYPE = PROC[targetType: Type, undefinedId: Rope.ROPE _ NIL, wrongValue: TV _ NIL, exec: UserExec.ExecHandle] RETURNS[flag: BOOLEAN _ FALSE, shouldBe: TV _ NIL]; Init: PROC; -- initializes various PrintProcs, typecorrectionprocs Interface: TYPE = REF READONLY InterfaceRec; InterfaceRec: TYPE = RECORD[name: Rope.ROPE]; -- until interface records work ok. END. -- BasicUserExec