rss-conduit-0.4.3.1: Streaming parser/renderer for the RSS standard.

Safe HaskellNone
LanguageHaskell2010

Text.RSS.Types

Contents

Description

RSS is an XML dialect for Web content syndication.

Example:

<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>Liftoff News</title>
      <link>http://liftoff.msfc.nasa.gov/</link>
      <description>Liftoff to Space Exploration.</description>
      <language>en-us</language>
      <pubDate>Tue, 10 Jun 2003 04:00:00 GMT</pubDate>
      <lastBuildDate>Tue, 10 Jun 2003 09:41:01 GMT</lastBuildDate>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs>
      <generator>Weblog Editor 2.0</generator>
      <managingEditor>editor@example.com</managingEditor>
      <webMaster>webmaster@example.com</webMaster>
      <item>
         <title>Star City</title>
         <link>http://liftoff.msfc.nasa.gov/news/2003/news-starcity.asp</link>
         <description>How do Americans get ready to work with Russians aboard the International Space Station? They take a crash course in culture, language and protocol at Russia's &lt;a href="http://howe.iki.rssi.ru/GCTC/gctc_e.htm"&gt;Star City&lt;/a&gt;.</description>
         <pubDate>Tue, 03 Jun 2003 09:39:21 GMT</pubDate>
         <guid>http://liftoff.msfc.nasa.gov/2003/06/03.html#item573</guid>
      </item>
   </channel>
</rss>
Synopsis

RSS core

data RssException Source #

Instances
Eq RssException Source # 
Instance details

Defined in Text.RSS.Types

Read RssException Source # 
Instance details

Defined in Text.RSS.Types

Show RssException Source # 
Instance details

Defined in Text.RSS.Types

Generic RssException Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssException :: Type -> Type #

Exception RssException Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssException Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssException = D1 (MetaData "RssException" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (((C1 (MetaCons "InvalidBool" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :+: C1 (MetaCons "InvalidDay" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) :+: (C1 (MetaCons "InvalidHour" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)) :+: C1 (MetaCons "InvalidInt" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))) :+: ((C1 (MetaCons "InvalidURI" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 URIParseError)) :+: C1 (MetaCons "InvalidVersion" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) :+: (C1 (MetaCons "InvalidProtocol" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :+: (C1 (MetaCons "InvalidTime" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :+: C1 (MetaCons "MissingElement" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))))))

data RssURI Source #

Constructors

RssURI (URIRef a) 
Instances
Eq RssURI Source # 
Instance details

Defined in Text.RSS.Types

Methods

(==) :: RssURI -> RssURI -> Bool #

(/=) :: RssURI -> RssURI -> Bool #

Ord RssURI Source # 
Instance details

Defined in Text.RSS.Types

Show RssURI Source # 
Instance details

Defined in Text.RSS.Types

withRssURI :: (forall a. URIRef a -> b) -> RssURI -> b Source #

data RssCategory Source #

The <category> element.

Constructors

RssCategory 
Instances
Eq RssCategory Source # 
Instance details

Defined in Text.RSS.Types

Ord RssCategory Source # 
Instance details

Defined in Text.RSS.Types

Show RssCategory Source # 
Instance details

Defined in Text.RSS.Types

Generic RssCategory Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssCategory :: Type -> Type #

type Rep RssCategory Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssCategory = D1 (MetaData "RssCategory" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssCategory" PrefixI True) (S1 (MetaSel (Just "categoryDomain") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "categoryName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

data RssEnclosure Source #

The <enclosure> element.

Instances
Eq RssEnclosure Source # 
Instance details

Defined in Text.RSS.Types

Ord RssEnclosure Source # 
Instance details

Defined in Text.RSS.Types

Show RssEnclosure Source # 
Instance details

Defined in Text.RSS.Types

Generic RssEnclosure Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssEnclosure :: Type -> Type #

type Rep RssEnclosure Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssEnclosure = D1 (MetaData "RssEnclosure" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssEnclosure" PrefixI True) (S1 (MetaSel (Just "enclosureUrl") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RssURI) :*: (S1 (MetaSel (Just "enclosureLength") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int) :*: S1 (MetaSel (Just "enclosureType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))))

data RssSource Source #

The <source> element.

Constructors

RssSource 
Instances
Eq RssSource Source # 
Instance details

Defined in Text.RSS.Types

Ord RssSource Source # 
Instance details

Defined in Text.RSS.Types

Show RssSource Source # 
Instance details

Defined in Text.RSS.Types

Generic RssSource Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssSource :: Type -> Type #

type Rep RssSource Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssSource = D1 (MetaData "RssSource" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssSource" PrefixI True) (S1 (MetaSel (Just "sourceUrl") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RssURI) :*: S1 (MetaSel (Just "sourceName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

data RssGuid Source #

The <guid> element.

Constructors

GuidText Text 
GuidUri RssURI 
Instances
Eq RssGuid Source # 
Instance details

Defined in Text.RSS.Types

Methods

(==) :: RssGuid -> RssGuid -> Bool #

(/=) :: RssGuid -> RssGuid -> Bool #

Ord RssGuid Source # 
Instance details

Defined in Text.RSS.Types

Show RssGuid Source # 
Instance details

Defined in Text.RSS.Types

Generic RssGuid Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssGuid :: Type -> Type #

Methods

from :: RssGuid -> Rep RssGuid x #

to :: Rep RssGuid x -> RssGuid #

type Rep RssGuid Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssGuid = D1 (MetaData "RssGuid" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "GuidText" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :+: C1 (MetaCons "GuidUri" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RssURI)))

data RssItem (extensions :: [*]) Source #

The <item> element.

This type is open to extensions.

Instances
Eq (RssItemExtensions e) => Eq (RssItem e) Source # 
Instance details

Defined in Text.RSS.Types

Methods

(==) :: RssItem e -> RssItem e -> Bool #

(/=) :: RssItem e -> RssItem e -> Bool #

Ord (RssItemExtensions e) => Ord (RssItem e) Source # 
Instance details

Defined in Text.RSS.Types

Methods

compare :: RssItem e -> RssItem e -> Ordering #

(<) :: RssItem e -> RssItem e -> Bool #

(<=) :: RssItem e -> RssItem e -> Bool #

(>) :: RssItem e -> RssItem e -> Bool #

(>=) :: RssItem e -> RssItem e -> Bool #

max :: RssItem e -> RssItem e -> RssItem e #

min :: RssItem e -> RssItem e -> RssItem e #

Show (RssItemExtensions e) => Show (RssItem e) Source # 
Instance details

Defined in Text.RSS.Types

Methods

showsPrec :: Int -> RssItem e -> ShowS #

show :: RssItem e -> String #

showList :: [RssItem e] -> ShowS #

Generic (RssItemExtensions e) => Generic (RssItem e) Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep (RssItem e) :: Type -> Type #

Methods

from :: RssItem e -> Rep (RssItem e) x #

to :: Rep (RssItem e) x -> RssItem e #

type Rep (RssItem e) Source # 
Instance details

Defined in Text.RSS.Types

type RssItem' = RssItem '[] Source #

Alias for RssItem with no RSS extensions.

data RssTextInput Source #

The <textInput> element.

Instances
Eq RssTextInput Source # 
Instance details

Defined in Text.RSS.Types

Ord RssTextInput Source # 
Instance details

Defined in Text.RSS.Types

Show RssTextInput Source # 
Instance details

Defined in Text.RSS.Types

Generic RssTextInput Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssTextInput :: Type -> Type #

type Rep RssTextInput Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssTextInput = D1 (MetaData "RssTextInput" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssTextInput" PrefixI True) ((S1 (MetaSel (Just "textInputTitle") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "textInputDescription") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :*: (S1 (MetaSel (Just "textInputName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "textInputLink") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RssURI))))

data CloudProtocol Source #

Instances
Eq CloudProtocol Source # 
Instance details

Defined in Text.RSS.Types

Ord CloudProtocol Source # 
Instance details

Defined in Text.RSS.Types

Read CloudProtocol Source # 
Instance details

Defined in Text.RSS.Types

Show CloudProtocol Source # 
Instance details

Defined in Text.RSS.Types

Generic CloudProtocol Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep CloudProtocol :: Type -> Type #

type Rep CloudProtocol Source # 
Instance details

Defined in Text.RSS.Types

type Rep CloudProtocol = D1 (MetaData "CloudProtocol" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "ProtocolXmlRpc" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "ProtocolSoap" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "ProtocolHttpPost" PrefixI False) (U1 :: Type -> Type)))

data RssCloud Source #

The <cloud> element.

Instances
Eq RssCloud Source # 
Instance details

Defined in Text.RSS.Types

Ord RssCloud Source # 
Instance details

Defined in Text.RSS.Types

Show RssCloud Source # 
Instance details

Defined in Text.RSS.Types

Generic RssCloud Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssCloud :: Type -> Type #

Methods

from :: RssCloud -> Rep RssCloud x #

to :: Rep RssCloud x -> RssCloud #

type Rep RssCloud Source # 
Instance details

Defined in Text.RSS.Types

type Rep RssCloud = D1 (MetaData "RssCloud" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssCloud" PrefixI True) (S1 (MetaSel (Just "cloudUri") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RssURI) :*: (S1 (MetaSel (Just "cloudRegisterProcedure") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "cloudProtocol") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 CloudProtocol))))

data RssImage Source #

The <image> element.

Instances
Eq RssImage Source # 
Instance details

Defined in Text.RSS.Types

Ord RssImage Source # 
Instance details

Defined in Text.RSS.Types

Show RssImage Source # 
Instance details

Defined in Text.RSS.Types

Generic RssImage Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep RssImage :: Type -> Type #

Methods

from :: RssImage -> Rep RssImage x #

to :: Rep RssImage x -> RssImage #

type Rep RssImage Source # 
Instance details

Defined in Text.RSS.Types

newtype Hour Source #

Constructors

Hour Int 
Instances
Bounded Hour Source # 
Instance details

Defined in Text.RSS.Types

Enum Hour Source # 
Instance details

Defined in Text.RSS.Types

Methods

succ :: Hour -> Hour #

pred :: Hour -> Hour #

toEnum :: Int -> Hour #

fromEnum :: Hour -> Int #

enumFrom :: Hour -> [Hour] #

enumFromThen :: Hour -> Hour -> [Hour] #

enumFromTo :: Hour -> Hour -> [Hour] #

enumFromThenTo :: Hour -> Hour -> Hour -> [Hour] #

Eq Hour Source # 
Instance details

Defined in Text.RSS.Types

Methods

(==) :: Hour -> Hour -> Bool #

(/=) :: Hour -> Hour -> Bool #

Ord Hour Source # 
Instance details

Defined in Text.RSS.Types

Methods

compare :: Hour -> Hour -> Ordering #

(<) :: Hour -> Hour -> Bool #

(<=) :: Hour -> Hour -> Bool #

(>) :: Hour -> Hour -> Bool #

(>=) :: Hour -> Hour -> Bool #

max :: Hour -> Hour -> Hour #

min :: Hour -> Hour -> Hour #

Read Hour Source # 
Instance details

Defined in Text.RSS.Types

Show Hour Source # 
Instance details

Defined in Text.RSS.Types

Methods

showsPrec :: Int -> Hour -> ShowS #

show :: Hour -> String #

showList :: [Hour] -> ShowS #

Generic Hour Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep Hour :: Type -> Type #

Methods

from :: Hour -> Rep Hour x #

to :: Rep Hour x -> Hour #

type Rep Hour Source # 
Instance details

Defined in Text.RSS.Types

type Rep Hour = D1 (MetaData "Hour" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" True) (C1 (MetaCons "Hour" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)))

asHour :: MonadThrow m => Int -> m Hour Source #

Smart constructor for Hour

data Day Source #

Instances
Bounded Day Source # 
Instance details

Defined in Text.RSS.Types

Methods

minBound :: Day #

maxBound :: Day #

Enum Day Source # 
Instance details

Defined in Text.RSS.Types

Methods

succ :: Day -> Day #

pred :: Day -> Day #

toEnum :: Int -> Day #

fromEnum :: Day -> Int #

enumFrom :: Day -> [Day] #

enumFromThen :: Day -> Day -> [Day] #

enumFromTo :: Day -> Day -> [Day] #

enumFromThenTo :: Day -> Day -> Day -> [Day] #

Eq Day Source # 
Instance details

Defined in Text.RSS.Types

Methods

(==) :: Day -> Day -> Bool #

(/=) :: Day -> Day -> Bool #

Ord Day Source # 
Instance details

Defined in Text.RSS.Types

Methods

compare :: Day -> Day -> Ordering #

(<) :: Day -> Day -> Bool #

(<=) :: Day -> Day -> Bool #

(>) :: Day -> Day -> Bool #

(>=) :: Day -> Day -> Bool #

max :: Day -> Day -> Day #

min :: Day -> Day -> Day #

Read Day Source # 
Instance details

Defined in Text.RSS.Types

Show Day Source # 
Instance details

Defined in Text.RSS.Types

Methods

showsPrec :: Int -> Day -> ShowS #

show :: Day -> String #

showList :: [Day] -> ShowS #

Generic Day Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep Day :: Type -> Type #

Methods

from :: Day -> Rep Day x #

to :: Rep Day x -> Day #

type Rep Day Source # 
Instance details

Defined in Text.RSS.Types

type Rep Day = D1 (MetaData "Day" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) ((C1 (MetaCons "Monday" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "Tuesday" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Wednesday" PrefixI False) (U1 :: Type -> Type))) :+: ((C1 (MetaCons "Thursday" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Friday" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "Saturday" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Sunday" PrefixI False) (U1 :: Type -> Type))))

asDay :: MonadThrow m => Text -> m Day Source #

Basic parser for Day.

data RssDocument (extensions :: [*]) Source #

The <rss> element.

This type is open to extensions.

Instances
(Eq (RssChannelExtensions e), Eq (RssItemExtensions e)) => Eq (RssDocument e) Source # 
Instance details

Defined in Text.RSS.Types

(Ord (RssChannelExtensions e), Ord (RssItemExtensions e)) => Ord (RssDocument e) Source # 
Instance details

Defined in Text.RSS.Types

(Show (RssChannelExtensions e), Show (RssItemExtensions e)) => Show (RssDocument e) Source # 
Instance details

Defined in Text.RSS.Types

(Generic (RssChannelExtensions e), Generic (RssItemExtensions e)) => Generic (RssDocument e) Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep (RssDocument e) :: Type -> Type #

Methods

from :: RssDocument e -> Rep (RssDocument e) x #

to :: Rep (RssDocument e) x -> RssDocument e #

type Rep (RssDocument e) Source # 
Instance details

Defined in Text.RSS.Types

type Rep (RssDocument e) = D1 (MetaData "RssDocument" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssDocument" PrefixI True) ((((S1 (MetaSel (Just "documentVersion") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Version) :*: S1 (MetaSel (Just "channelTitle") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :*: (S1 (MetaSel (Just "channelLink") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RssURI) :*: (S1 (MetaSel (Just "channelDescription") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "channelItems") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [RssItem e])))) :*: ((S1 (MetaSel (Just "channelLanguage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: (S1 (MetaSel (Just "channelCopyright") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "channelManagingEditor") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) :*: (S1 (MetaSel (Just "channelWebmaster") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: (S1 (MetaSel (Just "channelPubDate") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe UTCTime)) :*: S1 (MetaSel (Just "channelLastBuildDate") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe UTCTime)))))) :*: (((S1 (MetaSel (Just "channelCategories") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [RssCategory]) :*: S1 (MetaSel (Just "channelGenerator") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :*: (S1 (MetaSel (Just "channelDocs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RssURI)) :*: (S1 (MetaSel (Just "channelCloud") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RssCloud)) :*: S1 (MetaSel (Just "channelTtl") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Int))))) :*: ((S1 (MetaSel (Just "channelImage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RssImage)) :*: (S1 (MetaSel (Just "channelRating") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "channelTextInput") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe RssTextInput)))) :*: (S1 (MetaSel (Just "channelSkipHours") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Set Hour)) :*: (S1 (MetaSel (Just "channelSkipDays") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Set Day)) :*: S1 (MetaSel (Just "channelExtensions") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (RssChannelExtensions e))))))))

type RssDocument' = RssDocument '[] Source #

Alias for RssDocument with no RSS extensions.

RSS extensions

To implement an RSS extension:

  • Create a void data-type, that will be used as a tag to identify the extension:
data MyExtension :: *
  • Implement extension types for <channel> and <item> elements:
data instance RssChannelExtension MyExtension = MyExtensionChannel { {- ... fields -} }
data instance RssItemExtension MyExtension = MyExtensionItem { {- ... fields -} }

data family RssChannelExtension extensionTag :: * Source #

<channel> extension type.

Instances
Eq (RssChannelExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Eq (RssChannelExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Eq (RssChannelExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Eq (RssChannelExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

Ord (RssChannelExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Ord (RssChannelExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Ord (RssChannelExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Read (RssChannelExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Show (RssChannelExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Show (RssChannelExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Show (RssChannelExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Show (RssChannelExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

Generic (RssChannelExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Associated Types

type Rep (RssChannelExtension SyndicationModule) :: Type -> Type #

Generic (RssChannelExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Associated Types

type Rep (RssChannelExtension DublinCoreModule) :: Type -> Type #

Generic (RssChannelExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Associated Types

type Rep (RssChannelExtension ContentModule) :: Type -> Type #

Generic (RssChannelExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

Associated Types

type Rep (RssChannelExtension AtomModule) :: Type -> Type #

data RssChannelExtension SyndicationModule Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

data RssChannelExtension DublinCoreModule Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

data RssChannelExtension ContentModule Source # 
Instance details

Defined in Text.RSS.Extensions.Content

data RssChannelExtension AtomModule Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

type Rep (RssChannelExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

type Rep (RssChannelExtension SyndicationModule) = D1 (MetaData "RssChannelExtension" "Text.RSS.Extensions.Syndication" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "SyndicationChannel" PrefixI True) (S1 (MetaSel (Just "channelSyndicationInfo") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 SyndicationInfo)))
type Rep (RssChannelExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

type Rep (RssChannelExtension DublinCoreModule) = D1 (MetaData "RssChannelExtension" "Text.RSS.Extensions.DublinCore" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "DublinCoreChannel" PrefixI True) (S1 (MetaSel (Just "channelDcMetaData") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DcMetaData)))
type Rep (RssChannelExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

type Rep (RssChannelExtension ContentModule) = D1 (MetaData "RssChannelExtension" "Text.RSS.Extensions.Content" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "ContentChannel" PrefixI False) (U1 :: Type -> Type))
type Rep (RssChannelExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

type Rep (RssChannelExtension AtomModule) = D1 (MetaData "RssChannelExtension" "Text.RSS.Extensions.Atom" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "AtomChannel" PrefixI True) (S1 (MetaSel (Just "channelAtomLink") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe AtomLink))))

data family RssItemExtension extensionTag :: * Source #

<item> extension type.

Instances
Eq (RssItemExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Eq (RssItemExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Eq (RssItemExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Eq (RssItemExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

Ord (RssItemExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Ord (RssItemExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Ord (RssItemExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Read (RssItemExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Show (RssItemExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Show (RssItemExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Show (RssItemExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Show (RssItemExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

Generic (RssItemExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

Associated Types

type Rep (RssItemExtension SyndicationModule) :: Type -> Type #

Generic (RssItemExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

Associated Types

type Rep (RssItemExtension DublinCoreModule) :: Type -> Type #

Generic (RssItemExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

Associated Types

type Rep (RssItemExtension ContentModule) :: Type -> Type #

Generic (RssItemExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

Associated Types

type Rep (RssItemExtension AtomModule) :: Type -> Type #

data RssItemExtension SyndicationModule Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

data RssItemExtension DublinCoreModule Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

data RssItemExtension ContentModule Source # 
Instance details

Defined in Text.RSS.Extensions.Content

data RssItemExtension AtomModule Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

type Rep (RssItemExtension SyndicationModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Syndication

type Rep (RssItemExtension SyndicationModule) = D1 (MetaData "RssItemExtension" "Text.RSS.Extensions.Syndication" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "SyndicationItem" PrefixI False) (U1 :: Type -> Type))
type Rep (RssItemExtension DublinCoreModule) Source # 
Instance details

Defined in Text.RSS.Extensions.DublinCore

type Rep (RssItemExtension DublinCoreModule) = D1 (MetaData "RssItemExtension" "Text.RSS.Extensions.DublinCore" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "DublinCoreItem" PrefixI True) (S1 (MetaSel (Just "itemDcMetaData") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DcMetaData)))
type Rep (RssItemExtension ContentModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Content

type Rep (RssItemExtension ContentModule) = D1 (MetaData "RssItemExtension" "Text.RSS.Extensions.Content" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "ContentItem" PrefixI True) (S1 (MetaSel (Just "itemContent") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))
type Rep (RssItemExtension AtomModule) Source # 
Instance details

Defined in Text.RSS.Extensions.Atom

type Rep (RssItemExtension AtomModule) = D1 (MetaData "RssItemExtension" "Text.RSS.Extensions.Atom" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "AtomItem" PrefixI True) (S1 (MetaSel (Just "itemAtomLink") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe AtomLink))))

data family RssChannelExtensions (extensionTags :: [*]) :: * Source #

Combination of multiple <channel> extensions.

Instances
Eq (Rec RssChannelExtension a) => Eq (RssChannelExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Ord (Rec RssChannelExtension a) => Ord (RssChannelExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Read (Rec RssChannelExtension a) => Read (RssChannelExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Show (Rec RssChannelExtension a) => Show (RssChannelExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Generic (Rec RssChannelExtension a) => Generic (RssChannelExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep (RssChannelExtensions a) :: Type -> Type #

data RssChannelExtensions a Source # 
Instance details

Defined in Text.RSS.Types

type Rep (RssChannelExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

type Rep (RssChannelExtensions a) = D1 (MetaData "RssChannelExtensions" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssChannelExtensions" PrefixI True) (S1 (MetaSel (Just "rssChannelExtension") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Rec RssChannelExtension a))))

data family RssItemExtensions (extensionTags :: [*]) :: * Source #

Combination of multiple <item> extensions.

Instances
Eq (Rec RssItemExtension a) => Eq (RssItemExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Ord (Rec RssItemExtension a) => Ord (RssItemExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Read (Rec RssItemExtension a) => Read (RssItemExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Show (Rec RssItemExtension a) => Show (RssItemExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Generic (Rec RssItemExtension a) => Generic (RssItemExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

Associated Types

type Rep (RssItemExtensions a) :: Type -> Type #

data RssItemExtensions a Source # 
Instance details

Defined in Text.RSS.Types

type Rep (RssItemExtensions a) Source # 
Instance details

Defined in Text.RSS.Types

type Rep (RssItemExtensions a) = D1 (MetaData "RssItemExtensions" "Text.RSS.Types" "rss-conduit-0.4.3.1-3MBEiBX3Hml4G7VVM9nAdo" False) (C1 (MetaCons "RssItemExtensions" PrefixI True) (S1 (MetaSel (Just "rssItemExtension") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Rec RssItemExtension a))))