-- ASortDirDefs.mesa -- Last Edited by: Sweet, December 2, 1985 11:40:00 pm PST DIRECTORY Basics, Containers, IO, Rope, ViewerClasses; ASortDirDefs: DEFINITIONS = { ROPE: TYPE = Rope.ROPE; STREAM: TYPE = IO.STREAM; CallerNumber: TYPE = [0..200); CP: TYPE = RECORD [name, phone: ROPE, recruiter: CallerNumber]; CallerNameRec: TYPE = ARRAY CallerNumber OF CP; Handle: TYPE = REF MyRec; -- a REF to the data for a particular instance of the sample tool; multiple instances can be created. MyRec: TYPE = RECORD [ -- the data for a particular tool instance outer: Containers.Container _ NIL, -- handle for the enclosing container height: CARDINAL _ 0, -- height measured from the top of the container cmd: CommandViewer, -- the commands in, in2: IO.STREAM, eof: BOOLEAN _ FALSE, out: IO.STREAM, item: EntrySeq, secondary: EntrySeq, callerNumber, recruiterNumber: REF BOOL, address, zip, level, activity, dinner, age, phone, caller, recruiter, member: REF BOOL, tsIn, tsOut: STREAM, callerName: REF CallerNameRec, dinnerOrder: PACKED ARRAY CHAR OF [0..16) _ ALL[0], levelOrder: PACKED ARRAY CHAR OF [0..16) _ ALL[0], activityOrder: PACKED ARRAY CHAR OF [0..16) _ ALL[0], ageOrder: PACKED ARRAY CHAR OF [0..16) _ ALL[0], ts: ViewerClasses.Viewer ]; -- the typescript Entry: TYPE = RECORD [ phone: ARRAY [0..4) OF ROPE _ ALL[NIL], name: ARRAY [0..4) OF ROPE _ ALL[NIL], addr: ARRAY [0..4) OF ROPE _ ALL[NIL], town: ROPE _ NIL, zip: ROPE _ NIL, cname: ROPE, -- cannonical form name street: ROPE, number: INT _ 0, ctown: ROPE]; EntrySeqBody: TYPE = RECORD [count: CARDINAL _ 0, e: SEQUENCE max: CARDINAL OF REF Entry]; EntrySeq: TYPE = REF EntrySeqBody; CommandViewer: TYPE = RECORD [ inputFile, outputFile, secondary, callers: ViewerClasses.Viewer ]; CompareProc: PROC [h: Handle, r1, r2: REF Entry] RETURNS [Basics.Comparison]; Quit: PROC [handle: Handle, reason: ROPE _ NIL]; Quit2: PROC [handle: Handle, st: IO.STREAM, reason: ROPE _ NIL]; }. ,extracted for use by sort comparison Κ/˜J˜J˜:J˜šΟk ˜ J˜Jšœ ˜ Jšœ˜J˜Jšœ˜J˜—šœ œ˜Jšœœœ˜Jšœœœœ˜Jšœœ ˜Jšœœœœ˜?š œœœœœ˜/J˜—IunitšœœœΟcΠckž]˜procšœœœž+˜AJšœœž%˜HJšœœž0˜GJšœž˜$Jšœ  œœœ˜)Jšœ œ˜J˜J˜Jšœœ˜(JšœNœ˜WJšœ œ˜Jšœ œ˜Jš œ œœœœ œ˜3Jš œ œœœœ œ˜2Jš œœœœœ œ˜5Jš œ œœœœ œ˜0Jšœž˜.J˜—šœœœ˜Jš œœœœœœ˜'Jš œœœœœœ˜&Jš œœœœœœ˜&Jšœœœ˜Jšœœœ˜Jšœ$™$Jšœœž˜%Jšœœ˜ Jšœœ˜Jšœœ˜ J˜—Jšœœœ œ œœœœ˜Zšœ œœ˜"J˜—šœœœ˜Jšœ?˜?Jšœ˜J˜—JšΟn œœœœ˜MJš œœœœ˜0Jš  œœ œ œœ˜@J˜J˜——…—ž ω