starfeeds/feed
Types
pub type Author {
Author(
name: option.Option(String),
email: option.Option(String),
url: option.Option(String),
avatar: option.Option(String),
)
}
Constructors
-
Author( name: option.Option(String), email: option.Option(String), url: option.Option(String), avatar: option.Option(String), )
pub type Category {
Category(
name: option.Option(String),
domain: option.Option(String),
scheme: option.Option(String),
term: option.Option(String),
)
}
Constructors
-
Category( name: option.Option(String), domain: option.Option(String), scheme: option.Option(String), term: option.Option(String), )
pub type Enclosure {
Enclosure(
url: String,
enc_type: option.Option(String),
length: option.Option(Int),
title: option.Option(String),
duration: option.Option(Int),
)
}
Constructors
-
Enclosure( url: String, enc_type: option.Option(String), length: option.Option(Int), title: option.Option(String), duration: option.Option(Int), )
pub type Extension {
Extension(name: String, objects: ExtensionObjects)
}
Constructors
-
Extension(name: String, objects: ExtensionObjects)
pub type ExtensionObjects {
Photos(List(Photo))
Videos(List(Video))
UnknownObjects(dynamic.Dynamic)
}
Constructors
-
Photos(List(Photo))
-
Videos(List(Video))
-
UnknownObjects(dynamic.Dynamic)
pub type Feed {
Feed(
options: FeedOptions,
items: List(Item),
categories: List(String),
contributors: List(Author),
extensions: List(Extension),
)
}
Constructors
-
Feed( options: FeedOptions, items: List(Item), categories: List(String), contributors: List(Author), extensions: List(Extension), )
pub type FeedOptions {
FeedOptions(
id: String,
title: String,
updated: option.Option(birl.Time),
generator: option.Option(String),
language: option.Option(String),
ttl: option.Option(Int),
feed: option.Option(String),
feed_links: option.Option(Link),
hub: option.Option(String),
docs: option.Option(String),
podcast: option.Option(Bool),
category: option.Option(String),
author: option.Option(Author),
url: option.Option(String),
description: option.Option(String),
image: option.Option(String),
favicon: option.Option(String),
copyright: option.Option(String),
)
}
Constructors
-
FeedOptions( id: String, title: String, updated: option.Option(birl.Time), generator: option.Option(String), language: option.Option(String), ttl: option.Option(Int), feed: option.Option(String), feed_links: option.Option(Link), hub: option.Option(String), docs: option.Option(String), podcast: option.Option(Bool), category: option.Option(String), author: option.Option(Author), url: option.Option(String), description: option.Option(String), image: option.Option(String), favicon: option.Option(String), copyright: option.Option(String), )
pub type Item {
Item(
title: String,
id: option.Option(String),
url: String,
date: birl.Time,
description: option.Option(String),
content: option.Option(String),
category: option.Option(List(Category)),
guid: option.Option(#(String, option.Option(Bool))),
image: option.Option(String),
audio: option.Option(String),
video: option.Option(String),
enclosure: option.Option(Enclosure),
author: option.Option(List(Author)),
contributor: option.Option(List(Author)),
published: option.Option(birl.Time),
copyright: option.Option(String),
extensions: List(option.Option(Extension)),
)
}
Constructors
-
Item( title: String, id: option.Option(String), url: String, date: birl.Time, description: option.Option(String), content: option.Option(String), category: option.Option(List(Category)), guid: option.Option(#(String, option.Option(Bool))), image: option.Option(String), audio: option.Option(String), video: option.Option(String), enclosure: option.Option(Enclosure), author: option.Option(List(Author)), contributor: option.Option(List(Author)), published: option.Option(birl.Time), copyright: option.Option(String), extensions: List(option.Option(Extension)), )
pub type JsonFeed {
JsonFeed(
version: String,
title: String,
home_page_url: option.Option(String),
feed_url: option.Option(String),
description: option.Option(String),
user_comment: option.Option(String),
next_url: option.Option(String),
icon: option.Option(String),
favicon: option.Option(String),
authors: List(Author),
language: option.Option(String),
expired: option.Option(Bool),
items: List(JsonItem),
extensions: dict.Dict(String, ExtensionObjects),
)
}
Constructors
-
JsonFeed( version: String, title: String, home_page_url: option.Option(String), feed_url: option.Option(String), description: option.Option(String), user_comment: option.Option(String), next_url: option.Option(String), icon: option.Option(String), favicon: option.Option(String), authors: List(Author), language: option.Option(String), expired: option.Option(Bool), items: List(JsonItem), extensions: dict.Dict(String, ExtensionObjects), )
pub type JsonItem {
JsonItem(
title: String,
id: option.Option(String),
url: String,
date: birl.Time,
summary: option.Option(String),
content_html: option.Option(String),
category: option.Option(String),
image: option.Option(String),
enclosure: option.Option(Enclosure),
author: option.Option(Author),
tags: List(String),
date_published: String,
date_modified: String,
copyright: option.Option(String),
extensions: List(dict.Dict(String, ExtensionObjects)),
)
}
Constructors
-
JsonItem( title: String, id: option.Option(String), url: String, date: birl.Time, summary: option.Option(String), content_html: option.Option(String), category: option.Option(String), image: option.Option(String), enclosure: option.Option(Enclosure), author: option.Option(Author), tags: List(String), date_published: String, date_modified: String, copyright: option.Option(String), extensions: List(dict.Dict(String, ExtensionObjects)), )
pub type Link {
Link(
href: String,
rel: String,
link_type: String,
length: String,
)
}
Constructors
-
Link( href: String, rel: String, link_type: String, length: String, )
pub type Photo {
Photo(id: Int, url: String, caption: String)
}
Constructors
-
Photo(id: Int, url: String, caption: String)
Values
pub fn add_category(feed: Feed, category: String) -> List(String)
pub fn extensionobject_to_json(
object: dict.Dict(String, ExtensionObjects),
) -> json.Json
pub fn new(options: FeedOptions) -> JsonFeed