<<>> <> <> <> <> DIRECTORY IntCodeDefs, IO, Rope; <> <<>> <> <<>> <> <<>> C2CBasics: CEDAR DEFINITIONS = BEGIN <> c2cVersion: READONLY Rope.ROPE; <> rootNode: IntCodeDefs.Node; <> labelWithLambda: IntCodeDefs.LabelNode; <> <> <> Context: TYPE = RECORD [key: REF ¬ NIL, node: IntCodeDefs.Node¬NIL, data: REF ¬ NIL]; ContextSequence: TYPE = RECORD [ idx: NAT, seq: SEQUENCE max: NAT OF Context ]; ctxTop: REF ContextSequence; PushContext: PROC [ctx: Context]; PopContext: PROC []; <> <> <> <> <> GetProp: PROC [key: REF] RETURNS [val: REF]; <> PutProp: PROC [key, val: REF]; <> <> <> Report: PROC [what: Rope.ROPE ¬ NIL]; <> <> FatalError: ERROR [what: Rope.ROPE ¬ NIL]; <> <> <> ErrorStream: PROC [] RETURNS [IO.STREAM]; <> <> <<>> CantHappen: SIGNAL; <> CantHappenCedar: SIGNAL; <> CantHappenPreprocessed: SIGNAL; <> CaseMissing: SIGNAL; <> <> NotYetImpl: SIGNAL; <> NotYetImplPreprocessed: SIGNAL; <> <> <> CallbackWhenC2CIsCalled: PROC [p: PROC]; <> <> <<>> END.