-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A library for generating RSS 2.0 feeds.
--
-- This library allows you to generate RSS 2.0 feeds.
@package rss
@version 3000.2.0
-- | A libary for generating RSS 2.0 feeds.
--
-- Original module by Jeremy Shaw.
--
-- Changes by Bjorn Bringert:
--
--
-- - showXml just converts the RSS to a String, does not print it.
-- - Added XML escaping.
-- - Use RFC 2822 format for dates.
-- - Added all elements from RSS 2.0.1-rv-6,
-- http://www.rssboard.org/rss-2-0-1-rv-6
-- - Use HaXml.Verbatim instead of HaXml.Pretty, since HaXml.Pretty
-- seems to introduce spaces around entities.
-- - Removed the use of content:encoded, since the description tag is
-- the recommented way to include HTML content in RSS 2.0.
--
--
-- Changes by Bas van Dijk:
--
--
-- - Use UTCTime from time instead of
-- CalendarTime from old-time.
-- - Add our own Weekday type instead of using the
-- Day type from old-time.
--
module Text.RSS
data RSS
RSS :: Title -> Link -> Description -> [ChannelElem] -> [Item] -> RSS
type Item = [ItemElem]
data ChannelElem
Language :: String -> ChannelElem
Copyright :: String -> ChannelElem
ManagingEditor :: Email -> ChannelElem
WebMaster :: Email -> ChannelElem
ChannelPubDate :: UTCTime -> ChannelElem
LastBuildDate :: UTCTime -> ChannelElem
ChannelCategory :: (Maybe Domain) -> String -> ChannelElem
Generator :: String -> ChannelElem
Cloud :: CloudHost -> CloudPort -> CloudPath -> CloudProcedure -> CloudProtocol -> ChannelElem
TTL :: Minutes -> ChannelElem
Image :: URI -> Title -> Link -> (Maybe Width) -> (Maybe Height) -> (Maybe Description) -> ChannelElem
Rating :: String -> ChannelElem
TextInput :: Title -> Description -> InputName -> Link -> ChannelElem
SkipHours :: [Hour] -> ChannelElem
SkipDays :: [Weekday] -> ChannelElem
data ItemElem
Title :: Title -> ItemElem
Link :: Link -> ItemElem
Description :: Description -> ItemElem
Author :: Email -> ItemElem
Category :: (Maybe Domain) -> String -> ItemElem
Comments :: URI -> ItemElem
Enclosure :: URI -> Int -> MIME_Type -> ItemElem
Guid :: Bool -> String -> ItemElem
PubDate :: UTCTime -> ItemElem
Source :: URI -> Title -> ItemElem
type Title = String
type Link = URI
type Description = String
type Width = Int
type Height = Int
type Email = String
type Domain = String
type MIME_Type = String
type InputName = String
-- | A day of the week.
data Weekday
Sunday :: Weekday
Monday :: Weekday
Tuesday :: Weekday
Wednesday :: Weekday
Thursday :: Weekday
Friday :: Weekday
Saturday :: Weekday
type Hour = Int
type Minutes = Int
type CloudHost = String
type CloudPort = Int
type CloudPath = String
type CloudProcedure = String
data CloudProtocol
CloudProtocolXmlRpc :: CloudProtocol
CloudProtocolSOAP :: CloudProtocol
-- | Converts RSS to XML.
rssToXML :: RSS -> CFilter ()
-- | Render XML as a string.
showXML :: CFilter () -> String
instance Show CloudProtocol
instance Show ItemElem
instance Eq Weekday
instance Ord Weekday
instance Enum Weekday
instance Bounded Weekday
instance Ix Weekday
instance Read Weekday
instance Show Weekday
instance Show ChannelElem
instance Show RSS