Struct rss::Channel
[−]
[src]
pub struct Channel { /* fields omitted */ }
A representation of the <channel>
element.
Methods
impl Channel
[src]
fn title(&self) -> &str
Return the title of this Channel
.
Examples
use rss::ChannelBuilder; let title = "The Linux Action Show! OGG".to_string(); let channel = ChannelBuilder::default() .title(title.as_str()) .finalize(); assert_eq!(title, channel.title());
fn link(&self) -> &str
Return the web site URL for this Channel
.
Examples
use rss::ChannelBuilder; let link = "http://www.jupiterbroadcasting.com/".to_string(); let channel = ChannelBuilder::default() .link(link.as_str()) .finalize(); assert_eq!(link, channel.link());
fn description(&self) -> &str
Return the description of this Channel
.
Examples
use rss::ChannelBuilder; let description = "Ogg Vorbis audio versions of The Linux Action Show!".to_string(); let channel = ChannelBuilder::default() .description(description.as_str()) .finalize(); assert_eq!(description, channel.description());
fn language(&self) -> Option<&str>
Return the langauge of this Channel
.
Examples
use rss::ChannelBuilder; let language_string = "en-US"; let channel = ChannelBuilder::default() .language(language_string.to_string()) .finalize(); assert_eq!(Some(language_string), channel.language());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .language(None) .finalize(); assert!(channel.language().is_none());
fn copyright(&self) -> Option<&str>
Return the copyright notice for the content of this Channel
.
Examples
use rss::ChannelBuilder; let copyright = "Copyright 2002, Spartanburg Herald-Journal"; let channel = ChannelBuilder::default() .copyright(copyright.to_string()) .finalize(); assert_eq!(Some(copyright), channel.copyright());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .copyright(None) .finalize(); assert!(channel.copyright().is_none());
fn managing_editor(&self) -> Option<&str>
Return the email address for the managing editor of this Channel
.
Examples
use rss::ChannelBuilder; let managing_editor = "chris@jupiterbroadcasting.com (Chris Fisher)"; let channel = ChannelBuilder::default() .managing_editor(managing_editor.to_string()) .finalize(); assert_eq!(Some(managing_editor), channel.managing_editor());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .managing_editor(None) .finalize(); assert!(channel.managing_editor().is_none());
fn webmaster(&self) -> Option<&str>
Return the email address for webmaster of this Channel
.
Examples
use rss::ChannelBuilder; let webmaster = "chris@jupiterbroadcasting.com (Chris Fisher)"; let channel = ChannelBuilder::default() .webmaster(webmaster.to_string()) .finalize(); assert_eq!(Some(webmaster), channel.webmaster());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .webmaster(None) .finalize(); assert!(channel.webmaster().is_none());
fn pub_date(&self) -> Option<&str>
Return the publication date for the content of this Channel
.
Examples
use rss::ChannelBuilder; let pub_date = "Sun, 13 Mar 2016 20:02:02 -0700"; let channel = ChannelBuilder::default() .pub_date(pub_date.to_string()) .finalize(); assert_eq!(Some(pub_date), channel.pub_date());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .pub_date(None) .finalize(); assert!(channel.pub_date().is_none());
fn last_build_date(&self) -> Option<&str>
Return the time that the content of this Channel
was last changed.
Examples
use rss::ChannelBuilder; let last_build_date = "Sun, 13 Mar 2016 20:02:02 -0700"; let channel = ChannelBuilder::default() .last_build_date(last_build_date.to_string()) .finalize(); assert_eq!(Some(last_build_date), channel.last_build_date());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .last_build_date(None) .finalize(); assert!(channel.last_build_date().is_none());
fn categories(&self) -> &[Category]
Return the categories that this Channel
belongs to.
Examples
use rss::{ChannelBuilder, CategoryBuilder}; let category = CategoryBuilder::default() .name("Podcast") .finalize(); let categories = vec![category]; let channel = ChannelBuilder::default() .categories(categories.clone()) .finalize(); assert_eq!(categories.as_slice(), channel.categories());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .categories(Vec::new()) .finalize(); assert!(channel.categories().is_empty());
fn generator(&self) -> Option<&str>
Return the name of the program used to generate the contents of this Channel
.
Examples
use rss::ChannelBuilder; let generator = "Feeder 2.5.12(2294); Mac OS X Version 10.9.5 (Build 13F34) \ http://reinventedsoftware.com/feeder/"; let channel = ChannelBuilder::default() .generator(generator.to_string()) .finalize(); assert_eq!(Some(generator), channel.generator());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .generator(None) .finalize(); assert!(channel.generator().is_none());
fn docs(&self) -> Option<&str>
Return a URL that points to the documentation of the RSS format used in this Channel
.
Examples
use rss::ChannelBuilder; let docs = "http://blogs.law.harvard.edu/tech/rss/"; let channel = ChannelBuilder::default() .docs(docs.to_string()) .finalize(); assert_eq!(Some(docs), channel.docs());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .docs(None) .finalize(); assert!(channel.docs().is_none());
fn cloud(&self) -> Option<&Cloud>
Return the information used to register with a cloud for notifications of updates to the
Channel
.
Examples
use rss::{ChannelBuilder, CloudBuilder}; let cloud = CloudBuilder::default() .domain("http://rpc.sys.com/") .port(80) .path("/RPC2") .register_procedure("pingMe") .protocol("soap") .finalize(); let channel = ChannelBuilder::default() .cloud(cloud) .finalize(); assert!(channel.cloud().is_some());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .cloud(None) .finalize(); assert!(channel.cloud().is_none());
fn ttl(&self) -> Option<&str>
Return the time to live of this Channel
. This indicates the number of minutes the
Channel
can be cached before needing to be refreshed.
Examples
use rss::{ChannelBuilder, Channel}; let ttl = 60; let channel = ChannelBuilder::default() .ttl(ttl) .finalize(); assert_eq!(Some(ttl.to_string().as_str()), channel.ttl());
use rss::{ChannelBuilder, Channel}; let channel = ChannelBuilder::default() .ttl(None) .finalize(); assert!(channel.ttl().is_none());
fn image(&self) -> Option<&Image>
Return the image to be displayed with this Channel
.
Examples
use rss::{ChannelBuilder, ImageBuilder}; let image = ImageBuilder::default() .url("http://jupiterbroadcasting.com/images/LAS-300-Badge.jpg") .finalize(); let channel = ChannelBuilder::default() .image(image) .finalize(); assert!(channel.image().is_some());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .image(None) .finalize(); assert!(channel.image().is_none());
fn rating(&self) -> Option<&str>
Return the PICS rating for this Channel
.
Examples
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .rating(None) .finalize(); assert!(channel.rating().is_none());
fn text_input(&self) -> Option<&TextInput>
Return the information for a text box to be displayed with this Channel
.
Examples
use rss::{ChannelBuilder, TextInputBuilder}; let text_input = TextInputBuilder::default() .title("Enter Comment") .description("Provided Feedback") .name("Comment") .link("http://www.example.com/feedback") .finalize(); let channel = ChannelBuilder::default() .text_input(text_input) .finalize(); assert!(channel.text_input().is_some());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .text_input(None) .finalize(); assert!(channel.text_input().is_none());
fn skip_hours(&self) -> &[String]
Return the hours that aggregators can skip for refreshing content.
Examples
use rss::ChannelBuilder; let skip_hours = vec![6, 7, 8, 14, 22]; let channel = ChannelBuilder::default() .skip_hours(skip_hours.clone()) .finalize(); let skip_hours_str = skip_hours.iter().map(|n| n.to_string()).collect::<Vec<_>>(); assert_eq!(skip_hours_str.as_slice(), channel.skip_hours());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .skip_hours(Vec::new()) .finalize(); assert!(channel.skip_hours().is_empty());
fn skip_days(&self) -> &[String]
Return the days that aggregators can skip for refreshing content.
Examples
use rss::{ChannelBuilder, Channel}; let skip_days = vec!["Monday".to_string(), "Sunday".to_string()]; let channel = ChannelBuilder::default() .skip_days(skip_days.clone()) .finalize(); assert_eq!(skip_days.as_slice(), channel.skip_days());
use rss::{ChannelBuilder, Channel}; let channel = ChannelBuilder::default() .skip_days(Vec::new()) .finalize(); assert!(channel.skip_days().is_empty());
fn items(&self) -> &[Item]
Return the Item
s in this Channel
.
Examples
use rss::{ChannelBuilder, ItemBuilder}; let title = "Making Music with Linux | LAS 408".to_string(); let item = ItemBuilder::default() .title(title) .finalize(); let items = vec![item]; let channel = ChannelBuilder::default() .items(items.clone()) .finalize(); assert_eq!(items.as_slice(), channel.items());
use rss::{ChannelBuilder, Channel}; let channel = ChannelBuilder::default() .items(Vec::new()) .finalize(); assert!(channel.items().is_empty());
fn itunes_ext(&self) -> Option<&ITunesChannelExtension>
Return the ITunesChannelExtension
for this Channel
.
Examples
use rss::ChannelBuilder; use rss::extension::itunes::ITunesChannelExtensionBuilder; let itunes_ext = ITunesChannelExtensionBuilder::default() .author("author".to_string()) .finalize(); let channel = ChannelBuilder::default() .itunes_ext(itunes_ext) .finalize(); assert!(channel.itunes_ext().is_some());
use rss::ChannelBuilder; let channel = ChannelBuilder::default() .itunes_ext(None) .finalize(); assert!(channel.itunes_ext().is_none());
fn dublin_core_ext(&self) -> Option<&DublinCoreExtension>
Return the DublinCoreExtension
for this Channel
.
fn extensions(&self) -> &ExtensionMap
Return the extensions for this Channel
.
fn namespaces(&self) -> &HashMap<String, String>
Return the namespaces for this Channel
.
impl Channel
[src]
fn read_from<R: BufRead>(reader: R) -> Result<Channel, Error>
Attempt to read the RSS channel from the speficied reader.
Example
let reader: BufRead = ...; let channel = Channel::read_from(reader).unwrap();
fn write_to<W: Write>(&self, writer: W) -> Result<W, Error>
Attempt to write the RSS channel as XML to the speficied writer.
Example
let channel: Channel = ...; let writer: Write = ...; channel.write_to(writer).unwrap();
fn validate(&self) -> Result<Channel, Error>
Validate the contents of this Channel
.
Examples
use rss::Channel; let input = include_str!("tests/data/rss2sample.xml"); let channel = input.parse::<Channel>().unwrap(); channel.validate().unwrap();
Trait Implementations
impl Debug for Channel
[src]
impl Default for Channel
[src]
impl Clone for Channel
[src]
fn clone(&self) -> Channel
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl PartialEq for Channel
[src]
fn eq(&self, __arg_0: &Channel) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Channel) -> bool
This method tests for !=
.