Copyright | Copyright (C) 2005-2011 John Goerzen |
---|---|
License | BSD-3-Clause |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
General support for e-mail mailboxes
Written by John Goerzen, jgoerzen@complete.org
Synopsis
- data Flag
- type Flags = [Flag]
- type Message = String
- class (Show a, Show b, Eq b) => MailboxReader a b where
- 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
The flags which may be assigned to a message.
class (Show a, Show b, Eq b) => MailboxReader a b where Source #
Main class for readable mailboxes.
The mailbox object a represents zero or more Message
s. 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
.
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 where Source #