From cd95afa82432349e871bd8b37709e1c255b3301d Mon Sep 17 00:00:00 2001 From: Leonardo Freua Date: Mon, 11 Oct 2021 21:44:34 -0300 Subject: [PATCH] Solve traits exercises --- exercises/traits/traits1.rs | 7 ++++--- exercises/traits/traits2.rs | 9 ++++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/exercises/traits/traits1.rs b/exercises/traits/traits1.rs index 2ef9e11b..d17909d5 100644 --- a/exercises/traits/traits1.rs +++ b/exercises/traits/traits1.rs @@ -8,14 +8,15 @@ // which appends "Bar" to any object // implementing this trait. -// I AM NOT DONE - trait AppendBar { fn append_bar(self) -> Self; } impl AppendBar for String { - //Add your code here + fn append_bar(mut self) -> String { + self.push_str("Bar"); + self + } } fn main() { diff --git a/exercises/traits/traits2.rs b/exercises/traits/traits2.rs index 916c3c4b..d69bfb0e 100644 --- a/exercises/traits/traits2.rs +++ b/exercises/traits/traits2.rs @@ -10,13 +10,16 @@ // No boiler plate code this time, // you can do this! -// I AM NOT DONE - trait AppendBar { fn append_bar(self) -> Self; } -//TODO: Add your code here +impl AppendBar for Vec { + fn append_bar(mut self) -> Vec { + self.push(String::from("Bar")); + self + } +} #[cfg(test)] mod tests {