DIRECTORY Convert, Rope, MailFormatP1516V3, MailTransportP17V5Aux, MailFormatP1516V3Aux; MailFormatP1516V3AuxImpl: CEDAR PROGRAM IMPORTS Convert, Rope, MailTransportP17V5Aux EXPORTS MailFormatP1516V3Aux ~ { OPEN MailFormatP1516V3, MailFormatP1516V3Aux; ROPE: TYPE ~ Rope.ROPE; ExposeAttribute: PUBLIC PROC [arg: Attribute, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; res ¬ Rope.Cat[res, "type~", Convert.RopeFromCard[arg.type], ", "]; res ¬ Rope.Cat[res, "value~", ExposeVal[arg.value, (level+1)], "]"]; }; ExposeForwardedHeadings: PUBLIC PROC [arg: ForwardedHeadings, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, ExposeForwardedMessageInfo[arg.body[i], (level+1)]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeHeadingAtt: PUBLIC PROC [arg: HeadingAtt, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, ExposeAttribute[arg.body[i], (level+1)]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeVal: PUBLIC PROC [arg: Val, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, Convert.RopeFromCard[arg.body[i]]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeNullRecord: PUBLIC PROC [arg: NullRecord, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "[]"; }; ExposeSensitivity: PUBLIC PROC [arg: Sensitivity, level: NAT] RETURNS [res: ROPE] ~ { SELECT arg FROM personal => res ¬ "personal"; private => res ¬ "private"; companyConfidential => res ¬ "companyConfidential"; ENDCASE => ERROR }; ExposeIPMessageIDList: PUBLIC PROC [arg: IPMessageIDList, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, ExposeIPMessageID[arg.body[i], (level+1)]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeIPMessageID: PUBLIC PROC [arg: IPMessageID, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; res ¬ Rope.Cat[res, "originator~", MailTransportP17V5Aux.ExposeRName[arg.originator, (level+1)], ", "]; res ¬ Rope.Cat[res, "uniqueString~", arg.uniqueString, "]"]; }; ExposeImmutable: PUBLIC PROC [arg: Immutable, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "[]"; }; ExposeHeadingBodyPart: PUBLIC PROC [arg: HeadingBodyPart, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, ExposeAttribute[arg.body[i], (level+1)]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeassocBP: PUBLIC PROC [arg: assocBP, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, Convert.RopeFromCard[arg.body[i]]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeForwardedMessageInfo: PUBLIC PROC [arg: ForwardedMessageInfo, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; res ¬ Rope.Cat[res, "envelope~", ExposeEnvelopeAtt[arg.envelope, (level+1)], ", "]; res ¬ Rope.Cat[res, "heading~", ExposeHeadingAtt[arg.heading, (level+1)], ", "]; res ¬ Rope.Cat[res, "associatedBodyParts~", ExposeassocBP[arg.associatedBodyParts, (level+1)], ", "]; res ¬ Rope.Cat[res, "indexOfParentHeading~", ExposeIndexOfParentHeading[arg.indexOfParentHeading, (level+1)], "]"]; }; ExposeRNameList: PUBLIC PROC [arg: RNameList, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, MailTransportP17V5Aux.ExposeRName[arg.body[i], (level+1)]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeImportance: PUBLIC PROC [arg: Importance, level: NAT] RETURNS [res: ROPE] ~ { SELECT arg FROM low => res ¬ "low"; normal => res ¬ "normal"; high => res ¬ "high"; ENDCASE => ERROR }; ExposeEnvelopeAtt: PUBLIC PROC [arg: EnvelopeAtt, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; FOR i: CARDINAL IN [0..arg.length) DO res ¬ Rope.Cat[res, IF i>0 THEN ", " ELSE NIL, MailTransportP17V5Aux.ExposeEnvelopeItem[arg.body[i], (level+1)]]; ENDLOOP; res ¬ Rope.Concat[res, "]"]; }; ExposeIndexOfParentHeadingKind: PUBLIC PROC [arg: IndexOfParentHeadingKind, level: NAT] RETURNS [res: ROPE] ~ { SELECT arg FROM null => res ¬ "null"; nested => res ¬ "nested"; ENDCASE => ERROR }; ExposeIndexOfParentHeading: PUBLIC PROC [arg: IndexOfParentHeading, level: NAT] RETURNS [res: ROPE] ~ { res ¬ Rope.Cat["IndexOfParentHeading(", ExposeIndexOfParentHeadingKind[arg.type, (level+1)], "): "]; WITH arg SELECT FROM it: REF IndexOfParentHeadingObject.null => { res ¬ Rope.Concat[res, ExposeNullRecord[it.null, (level+1)]] }; it: REF IndexOfParentHeadingObject.nested => { res ¬ Rope.Concat[res, ExposeNestedIndex[it.nested, (level+1)]] }; ENDCASE => ERROR }; ExposeNestedIndex: PUBLIC PROC [arg: NestedIndex, level: NAT] RETURNS [res: ROPE] ~ { res ¬ "["; res ¬ Rope.Cat[res, "index~", Convert.RopeFromCard[arg.index], "]"]; }; }... ΰ MailFormatP1516V3AuxImpl.Mesa Copyright Σ 1989, 1991 by Xerox Corporation. All rights reserved. Generated by Willie-sue.pa at February 13, 1989 6:37:15 pm PST using Sirocco [2.0] of February 10, 1989 6:26:26 pm PST Κν•NewlineDelimiter –(cedarcode) style™šœ™Jšœ Οeœ6™BJšœ>™>Jšœ7™7Icode˜—šΟk ˜ K˜K˜K˜K˜K˜—K˜šΟnœžœž˜'Kšžœ%˜,Kšžœ˜ Kšžœ)˜-K˜Kšžœžœžœ˜K˜š Ÿœžœžœžœžœžœ˜QK˜ K˜CK˜DK˜—K˜š Ÿœžœžœ!žœžœžœ˜aK˜ šžœžœžœž˜%Kš œžœžœžœžœ6˜cKšžœ˜—K˜K˜—K˜š Ÿœžœžœžœžœžœ˜SK˜ šžœžœžœž˜%Kš œžœžœžœžœ+˜XKšžœ˜—K˜K˜—K˜š Ÿ œžœžœžœžœžœ˜EK˜ šžœžœžœž˜%Kš œžœžœžœžœ%˜RKšžœ˜—K˜K˜—K˜š Ÿœžœžœžœžœžœ˜SK˜ K˜—K˜š Ÿœžœžœžœžœžœ˜Ušžœž˜K˜K˜K˜3Kšžœž˜—K˜—K˜š Ÿœžœžœžœžœžœ˜]K˜ šžœžœžœž˜%Kš œžœžœžœžœ-˜ZKšžœ˜—K˜K˜—K˜š Ÿœžœžœžœžœžœ˜UK˜ K˜gK˜