Safe Haskell | None |
---|---|
Language | Haskell98 |
- connectIMAP :: String -> IO IMAPConnection
- connectIMAPPort :: String -> PortNumber -> IO IMAPConnection
- connectStream :: BSStream -> IO IMAPConnection
- noop :: IMAPConnection -> IO ()
- capability :: IMAPConnection -> IO [String]
- logout :: IMAPConnection -> IO ()
- login :: IMAPConnection -> UserName -> Password -> IO ()
- authenticate :: IMAPConnection -> AuthType -> UserName -> Password -> IO ()
- select :: IMAPConnection -> MailboxName -> IO ()
- examine :: IMAPConnection -> MailboxName -> IO ()
- create :: IMAPConnection -> MailboxName -> IO ()
- delete :: IMAPConnection -> MailboxName -> IO ()
- rename :: IMAPConnection -> MailboxName -> MailboxName -> IO ()
- subscribe :: IMAPConnection -> MailboxName -> IO ()
- unsubscribe :: IMAPConnection -> MailboxName -> IO ()
- list :: IMAPConnection -> IO [([Attribute], MailboxName)]
- lsub :: IMAPConnection -> IO [([Attribute], MailboxName)]
- status :: IMAPConnection -> MailboxName -> [MailboxStatus] -> IO [(MailboxStatus, Integer)]
- append :: IMAPConnection -> MailboxName -> ByteString -> IO ()
- check :: IMAPConnection -> IO ()
- close :: IMAPConnection -> IO ()
- expunge :: IMAPConnection -> IO [Integer]
- search :: IMAPConnection -> [SearchQuery] -> IO [UID]
- store :: IMAPConnection -> UID -> FlagsQuery -> IO ()
- copy :: IMAPConnection -> UID -> MailboxName -> IO ()
- fetch :: IMAPConnection -> UID -> IO ByteString
- fetchHeader :: IMAPConnection -> UID -> IO ByteString
- fetchSize :: IMAPConnection -> UID -> IO Int
- fetchHeaderFields :: IMAPConnection -> UID -> [String] -> IO ByteString
- fetchHeaderFieldsNot :: IMAPConnection -> UID -> [String] -> IO ByteString
- fetchFlags :: IMAPConnection -> UID -> IO [Flag]
- fetchR :: IMAPConnection -> (UID, UID) -> IO [(UID, ByteString)]
- fetchByString :: IMAPConnection -> UID -> String -> IO [(String, String)]
- fetchByStringR :: IMAPConnection -> (UID, UID) -> String -> IO [(UID, [(String, String)])]
- data Flag
- data Attribute
- data MailboxStatus
- = MESSAGES
- | RECENT
- | UIDNEXT
- | UIDVALIDITY
- data SearchQuery
- = ALLs
- | FLAG Flag
- | UNFLAG Flag
- | BCCs String
- | BEFOREs CalendarTime
- | BODYs String
- | CCs String
- | FROMs String
- | HEADERs String String
- | LARGERs Integer
- | NEWs
- | NOTs SearchQuery
- | OLDs
- | ONs CalendarTime
- | ORs SearchQuery SearchQuery
- | SENTBEFOREs CalendarTime
- | SENTONs CalendarTime
- | SENTSINCEs CalendarTime
- | SINCEs CalendarTime
- | SMALLERs Integer
- | SUBJECTs String
- | TEXTs String
- | TOs String
- | UIDs [UID]
- data FlagsQuery
- = ReplaceFlags [Flag]
- | PlusFlags [Flag]
- | MinusFlags [Flag]
Documentation
connectIMAP :: String -> IO IMAPConnection
connectIMAPPort :: String -> PortNumber -> IO IMAPConnection
IMAP commands
any state commands
noop :: IMAPConnection -> IO ()
capability :: IMAPConnection -> IO [String]
logout :: IMAPConnection -> IO ()
not authenticated state commands
login :: IMAPConnection -> UserName -> Password -> IO ()
authenticate :: IMAPConnection -> AuthType -> UserName -> Password -> IO ()
autenticated state commands
select :: IMAPConnection -> MailboxName -> IO ()
examine :: IMAPConnection -> MailboxName -> IO ()
create :: IMAPConnection -> MailboxName -> IO ()
delete :: IMAPConnection -> MailboxName -> IO ()
rename :: IMAPConnection -> MailboxName -> MailboxName -> IO ()
subscribe :: IMAPConnection -> MailboxName -> IO ()
unsubscribe :: IMAPConnection -> MailboxName -> IO ()
list :: IMAPConnection -> IO [([Attribute], MailboxName)]
lsub :: IMAPConnection -> IO [([Attribute], MailboxName)]
status :: IMAPConnection -> MailboxName -> [MailboxStatus] -> IO [(MailboxStatus, Integer)]
append :: IMAPConnection -> MailboxName -> ByteString -> IO ()
selected state commands
check :: IMAPConnection -> IO ()
close :: IMAPConnection -> IO ()
expunge :: IMAPConnection -> IO [Integer]
search :: IMAPConnection -> [SearchQuery] -> IO [UID]
store :: IMAPConnection -> UID -> FlagsQuery -> IO ()
copy :: IMAPConnection -> UID -> MailboxName -> IO ()
fetch commands
fetch :: IMAPConnection -> UID -> IO ByteString
fetchHeader :: IMAPConnection -> UID -> IO ByteString
fetchSize :: IMAPConnection -> UID -> IO Int
fetchHeaderFields :: IMAPConnection -> UID -> [String] -> IO ByteString
fetchHeaderFieldsNot :: IMAPConnection -> UID -> [String] -> IO ByteString
fetchFlags :: IMAPConnection -> UID -> IO [Flag]
fetchR :: IMAPConnection -> (UID, UID) -> IO [(UID, ByteString)]
fetchByString :: IMAPConnection -> UID -> String -> IO [(String, String)]
fetchByStringR :: IMAPConnection -> (UID, UID) -> String -> IO [(UID, [(String, String)])]
other types
data MailboxStatus
the query data type for the status command
MESSAGES | the number of messages in the mailbox |
RECENT | the number of messages with the Recent flag set |
UIDNEXT | the next unique identifier value of the mailbox |
UIDVALIDITY | the unique identifier validity value of the mailbox |
data SearchQuery
data FlagsQuery
ReplaceFlags [Flag] | |
PlusFlags [Flag] | |
MinusFlags [Flag] |