DIRECTORY CirioTypes USING[CompilerContext, Mem, Node, Type], Rope USING[ROPE]; Sequences: CEDAR DEFINITIONS = BEGIN CC: TYPE = CirioTypes.CompilerContext; Node: TYPE = CirioTypes.Node; Mem: TYPE = CirioTypes.Mem; Type: TYPE = CirioTypes.Type; SequenceTypeProcs: TYPE = RECORD [ createIndirectNode: PROC [cc: CC, data: REF ANY, indirectType, targetType: Type, mem: Mem] RETURNS [Node], getBitSize: PROC[indirectType: Type, cc: CC, data: REF ANY] RETURNS[CARD], getEntryType: PROC[cc: CC, data: REF ANY] RETURNS[CirioTypes.Type], getNominalArrayType: PROC[cc: CC, data: REF ANY] RETURNS[CirioTypes.Type] ]; CreateSequenceRecordType: PROC[preamble: Type, tailName: Rope.ROPE, tagName: Rope.ROPE, indexType: Type, procs: REF SequenceTypeProcs, cc: CC, data: REF ANY] RETURNS[Type]; IndirectSRProcs: TYPE = RECORD[ selectPreamble: PROC[procsData: REF ANY, cc: CC] RETURNS[CirioTypes.Node], selectTag: PROC[procsData: REF ANY, cc: CC] RETURNS[CirioTypes.Node], selectTailEntry: PROC[index: CARD, procsData: REF ANY, cc: CC] RETURNS[CirioTypes.Node], getPointer: PROC[data: REF ANY, cc: CC] RETURNS[CirioTypes.Node]]; CreateIndirectSequenceNode: PROC[targetSeqType: Type, procs: REF IndirectSRProcs, procsData: REF ANY, cc: CC] RETURNS[Node]; END. | Sequences.mesa Copyright Σ 1991, 1992 by Xerox Corporation. All rights reserved. Sturgis, February 22, 1989 3:43:40 pm PST Last changed by Theimer on July 16, 1989 4:44:16 pm PDT Spreitze, May 21, 1991 8:20 am PDT CirioCode.GetTypeClass[type] = $sequence CCTypes.GetTypeRepresentation will return NIL. Note: selectEntry[0, cc, data] selects the first entry in the array. Κo–(cedarcode) style•NewlineDelimiter ™codešœ™Kšœ Οeœ7™BKšœ)™)K™7K™"—K˜šΟk ˜ Kšœ žœ#˜3Kšœžœžœ˜K˜—šΟn œžœž œ˜Kšž˜K˜Kšžœžœ˜&Kšœžœ˜Kšœžœ˜Kšœžœ˜K˜šœžœžœ˜"Kš œžœžœžœžœ,žœ˜jKš œ žœžœžœžœžœžœ˜JKš œžœžœžœžœžœ˜CKš œžœžœžœžœžœ˜IKšœ˜—K˜K˜K˜šŸœžœ žœžœžœžœžœžœžœ˜¬Kšœ(™(Kšœ*žœ™.—K™K˜šœžœžœ˜Kš œžœ žœžœžœžœ˜JKš œ žœ žœžœžœžœ˜EKš œžœžœ žœžœžœžœ˜XKš œ žœžœžœžœžœ˜BK˜K˜—KšŸœžœžœžœžœžœžœ˜|˜KšœD™D—K˜Kšžœ˜——…—ζΡ