atom

Build Status Crates.io Status

Library for serializing the Atom web content syndication format.

Documentation

Usage

Add the dependency to your Cargo.toml.

toml [dependencies] atom_syndication = "0.5"

The package includes a single crate named atom_syndication.

rust extern crate atom_syndication;

Reading

A feed can be read from any object that implements the BufRead trait or using the FromStr trait.

```rust use std::fs::File; use std::io::BufReader; use atom_syndication::Feed;

let file = File::open("example.xml").unwrap(); let feed = Feed::read_from(BufReader::new(reader)).unwrap();

let string = ""; let feed = string.parse::().unwrap(); ```

Writing

A feed can be written to any object that implements the Write trait or converted to an XML string using the ToString trait.

Note: Writing a feed does not perform any escaping of XML entities.

Example

```rust use std::fs::File; use std::io::{BufReader, sink}; use atom_syndication::Feed;

let file = File::open("example.xml").unwrap(); let feed = Feed::read_from(BufReader::new(file)).unwrap();

// write to the feed to a writer feed.write_to(sink()).unwrap();

// convert the feed to a string let string = feed.to_string(); ```

Invalid Feeds

As a best effort to parse invalid feeds atom_syndication will default elements declared as "required" by the Atom specification to an empty string.

License

Licensed under either of

at your option.