From 5626a54d626cfe520ba879c42fc9dd0331c76eb9 Mon Sep 17 00:00:00 2001 From: Jordan Gong Date: Wed, 2 Sep 2020 21:00:12 +0800 Subject: Share behavior with traits --- traits/src/main.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 traits/src/main.rs (limited to 'traits/src/main.rs') diff --git a/traits/src/main.rs b/traits/src/main.rs new file mode 100644 index 0000000..02e408b --- /dev/null +++ b/traits/src/main.rs @@ -0,0 +1,26 @@ +use traits::{self, NewsArticle, Summary, Tweet, notify}; + +fn main() { + let tweet = Tweet { + username: String::from("horse_ebooks"), + content: String::from("of course, as you probably already know, people"), + reply: false, + retweet: false, + }; + + println!("1 new tweet: {}", tweet.summarize()); + + let article = NewsArticle { + headline: String::from("Penguins win the Stanley Cup Championship!"), + location: String::from("Pittsburgh, PA, USA"), + author: String::from("Iceburgh"), + content: String::from( + "The Pittsburgh Penguins once again are the best \ + hockey team in the NHL.", + ), + }; + + println!("New article available! {}", article.summarize()); + + notify(&article); +} -- cgit v1.2.3