aboutsummaryrefslogtreecommitdiffstats
path: root/src/build_rss.rs
diff options
context:
space:
mode:
authorTeddy Wing2018-04-13 19:08:48 +0200
committerTeddy Wing2018-04-13 19:08:48 +0200
commit97dba8dedcf3fde65dfa9ae4aa57de0c446a66a1 (patch)
tree34ee4ad6156f5bd4626e4f747a1f2898a18cecd0 /src/build_rss.rs
parent9c52f6e0b4db6ce7c732e33feceb40743611d35c (diff)
downloadmeetup-find-events-rss-97dba8dedcf3fde65dfa9ae4aa57de0c446a66a1.tar.bz2
Output a feed to STDOUT when running the executable
* Add a new module that contains a "main" library function that does the integration for generating the feed and outputting it to STDOUT. * Call this function from `main()` and have it output a real feed.
Diffstat (limited to 'src/build_rss.rs')
-rw-r--r--src/build_rss.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/build_rss.rs b/src/build_rss.rs
new file mode 100644
index 0000000..ab9d06d
--- /dev/null
+++ b/src/build_rss.rs
@@ -0,0 +1,14 @@
+use std::error::Error;
+
+use meetup::event;
+use meetup_rss;
+
+/// Requests the Meetup API, generates an RSS feed from the resulting events,
+/// and writes the XML to standard output.
+pub fn write_feed() -> Result<(), Box<Error>> {
+ let events = event::find_upcoming_events()?;
+ let channel = meetup_rss::generate(&events)?;
+ meetup_rss::write(channel);
+
+ Ok(())
+}