DIRECTORY BasicTime USING [GMT], MailBasics USING [RName], PeanutParse USING [ParseStatus], Rope USING [ROPE]; PeanutRetrieve: CEDAR DEFINITIONS = BEGIN RName: TYPE = MailBasics.RName; ROPE: TYPE = Rope.ROPE; MsgRec: TYPE = REF MessageRecObject; MessageRecObject: TYPE = RECORD[ fullText: ROPE, -- The text for sending, or what came from Grapevine dateCode: BasicTime.GMT, -- date in msg gvSender: RName, -- The sender as given by Grapevine gvID: ROPE, -- Rope.Cat[gvSender, " $ ", gvTimeStamp] categories: LIST OF ROPE, -- categories & keywords, from prefix date: ROPE, -- The date. inMsgSender: ROPE, -- non-NIL iff msg contains sender: field from: ROPE, -- The From: field (may be freeform) to: LIST OF RName, -- The To: field subject: ROPE, -- The subject. inReplyTo: ROPE, -- The In-Reply-To: field. cc: LIST OF RName, -- The cc: field replyTo: ROPE, -- the ReplyTo: field (may be freeform) unrecognized: LIST OF ROPE, -- Other header items. hasBeenRead: BOOL¬ FALSE, -- has this message been displayed or not headersText: ROPE, -- Just the headers bodyText: ROPE -- The body of the message without header lines. ]; OpenConnection: PROC[user: LIST OF RName]; CloseConnection: PROC; NewUser: PROC[user: LIST OF RName]; GetNewMsgs: PROC [open: BOOL ¬ TRUE]; ParseMsgIntoFields: PROC[msg: MsgRec] RETURNS[s: PeanutParse.ParseStatus, sPos, mPos: INT]; END. φ PeanutRetrieve.mesa Copyright Σ 1985, 1989, 1992 by Xerox Corporation. All rights reserved. March 4, 1983 10:54 am Doug Wyatt, March 7, 1985 11:26:18 am PST Willie-Sue, April 24, 1989 3:29:55 pm PDT Jules Bloomenthal June 30, 1992 9:51 pm PDT The following items are parsed out of the fullText: Operations for retrieving messages [PeanutRetrieveImpl] Establish a connection for this user. Establish a new user on this connection. Operations for parsing new messages [PeanutRetrieveParseImpl] Κ°–(cedarcode) style•NewlineDelimiter ™codešœ™Kšœ Οeœ=™HKšœ™K™)K™)K™+—K˜šΟk ˜ Kšœ žœžœ˜Kšœ žœ ˜Kšœ žœ˜ Kšœžœžœ˜—K˜KšΠblœžœž ˜!Kšœž˜K˜Kšœžœ˜Kšžœžœžœ˜K˜Kšœžœžœ˜$šœžœžœ˜ Kšœ žœΟc4˜EKšœžœ ˜'Kšœ #˜4Kšœžœ )˜5Kšœ žœžœžœ %˜?K˜Kšœ3™3Kšœžœ  ˜Kšœ žœ )˜