1 /* BEGIN INCLUDE FILE ... rdm_message_list.incl.pl1 */
 2 /* Created:  September 1983 by G. Palter */
 3 
 4 /* Definition of per-message data maintained by read_mail:  This list is maintined in parallel to the mailbox structure by
 5    read_mail's interface to the mail_system_ mailbox manager (rdm_mailbox_interface_).  It serves two purposes:
 6       (1) It provides a place to store read_mail-specific per-message data (ie: the processed flag).
 7       (2) It provides the ability to provide arbitrary mappings between read_mail message numbers and the actual indeces
 8           within the mailbox structure.  This mapping allows read_mail to preserve its message numbers for an invocation
 9           even if messages are expunged which causes them to disappear from the mailbox structure (NB: the "expunge"
10           request is not yet implemented).  This mapping also allows read_mail to present the messages in the mailbox to
11           the user in a different order than they actually appear in the mailbox (eg: sorted by date/time created) */
12 
13 dcl  1 message_list aligned based (rdm_invocation.message_list_ptr),
14        2 n_messages fixed binary,                           /* # of messages known to read_mail at present */
15        2 pad bit (36),
16        2 messages (message_list_n_messages refer (message_list.n_messages)),
17          3 message_idx fixed binary,                        /* index of this message in the mailbox structure */
18          3 flags,
19            4 processed bit (1) unaligned,                   /* ON => this message may be deleted without query */
20            4 pad bit (35) unaligned,
21          3 search_text,                                     /* describes copy of messages used for regexp searches */
22            4 search_text_ptr pointer,                       /* ... -> the saved printed represetnation */
23            4 search_text_lth fixed binary (21);             /* ... length of said representation in characters */
24 
25 dcl  message_list_n_messages fixed binary;
26 
27 /* END INCLUDE FILE ... rdm_message_list.incl.pl1 */