MissingH-1.0.3: Large utility librarySource codeContentsIndex
Network.Email.Mailbox
Portabilityportable
Stabilityprovisional
MaintainerJohn Goerzen <jgoerzen@complete.org>
Description

General support for e-mail mailboxes

Written by John Goerzen, jgoerzen@complete.org

Synopsis
data Flag
= SEEN
| ANSWERED
| FLAGGED
| DELETED
| DRAFT
| FORWARDED
| OTHERFLAG String
type Flags = [Flag]
type Message = String
class (Show a, Show b, Eq b) => MailboxReader a b where
listIDs :: a -> IO [b]
listMessageFlags :: a -> IO [(b, Flags)]
getAll :: a -> IO [(b, Flags, Message)]
getMessages :: a -> [b] -> IO [(b, Flags, Message)]
class MailboxReader a b => MailboxWriter a b where
appendMessages :: a -> [(Flags, Message)] -> IO [b]
deleteMessages :: a -> [b] -> IO ()
addFlags :: a -> [b] -> Flags -> IO ()
removeFlags :: a -> [b] -> Flags -> IO ()
setFlags :: a -> [b] -> Flags -> IO ()
Documentation
data Flag Source
The flags which may be assigned to a message.
Constructors
SEEN
ANSWERED
FLAGGED
DELETED
DRAFT
FORWARDED
OTHERFLAG String
show/hide Instances
type Flags = [Flag]Source
Convenience shortcut
type Message = StringSource
A Message is represented as a simple String.
class (Show a, Show b, Eq b) => MailboxReader a b whereSource

Main class for readable mailboxes.

The mailbox object a represents zero or more Messages. Each message has a unique identifier b in a format specific to each given mailbox. This identifier may or may not be persistent.

Functions which return a list are encouraged -- but not guaranteed -- to do so lazily.

Implementing classes must provide, at minimum, getAll.

Methods
listIDs :: a -> IO [b]Source
Returns a list of all unique identifiers.
listMessageFlags :: a -> IO [(b, Flags)]Source
Returns a list of all unique identifiers as well as all flags.
getAll :: a -> IO [(b, Flags, Message)]Source
Returns a list of all messages, including their content, flags, and unique identifiers.
getMessages :: a -> [b] -> IO [(b, Flags, Message)]Source
Returns information about specific messages.
class MailboxReader a b => MailboxWriter a b whereSource
Methods
appendMessages :: a -> [(Flags, Message)] -> IO [b]Source
deleteMessages :: a -> [b] -> IO ()Source
addFlags :: a -> [b] -> Flags -> IO ()Source
removeFlags :: a -> [b] -> Flags -> IO ()Source
setFlags :: a -> [b] -> Flags -> IO ()Source
Produced by Haddock version 2.6.0