Safe Haskell | None |
---|
- data Action
- = Check
- | ShowStatus
- | MarkAsRead
- | MarkAsUnread
- | Update
- type ImmFeed = (FeedID, Feed)
- class FeedParser m where
- showType :: Feed -> String
- describe :: Feed -> String
- describeItem :: Item -> String
- parse :: MonadError ImmError m => String -> m Feed
- download :: (Decoder m, MonadBase IO m, MonadError ImmError m) => URI -> m ImmFeed
- check :: (FeedParser m, DatabaseReader m, MonadBase IO m, MonadError ImmError m) => ImmFeed -> m ()
- markAsRead :: (MonadBase IO m, MonadError ImmError m, DatabaseState m) => URI -> m ()
- markAsUnread :: (MonadBase IO m, MonadError ImmError m, DatabaseState m) => URI -> m ()
- showStatus :: (DatabaseReader m, MonadBase IO m) => URI -> m String
- getItemContent :: Item -> String
- getDate :: (FeedParser m, Monad m, MonadError ImmError m) => Item -> m UTCTime
- extractHtml :: EntryContent -> String
Documentation
class FeedParser m whereSource
(Monad m, Error e, FeedParser m) => FeedParser (ErrorT e m) | |
Monad m => FeedParser (ReaderT Config m) |
describeItem :: Item -> StringSource
parse :: MonadError ImmError m => String -> m FeedSource
Monad-agnostic version of parseFeedString
download :: (Decoder m, MonadBase IO m, MonadError ImmError m) => URI -> m ImmFeedSource
Retrieve, decode and parse the given resource as a feed.
check :: (FeedParser m, DatabaseReader m, MonadBase IO m, MonadError ImmError m) => ImmFeed -> m ()Source
markAsRead :: (MonadBase IO m, MonadError ImmError m, DatabaseState m) => URI -> m ()Source
Simply set the last check time to now.
markAsUnread :: (MonadBase IO m, MonadError ImmError m, DatabaseState m) => URI -> m ()Source
Simply remove the state file.
showStatus :: (DatabaseReader m, MonadBase IO m) => URI -> m StringSource
Return a String
describing the last update for a given feed.
getItemContent :: Item -> StringSource
This function is missing from Query
, probably because it is difficult to define where the content is located in a generic way for AtomRSS 1.xRSS 2.x feeds.
getDate :: (FeedParser m, Monad m, MonadError ImmError m) => Item -> m UTCTimeSource