From ebe07acd1efdb4ef753a54cce48c06f83034d2bf Mon Sep 17 00:00:00 2001 From: david Date: Mon, 1 Jul 2024 16:15:42 +0200 Subject: [PATCH] solution to exercise 04_01 --- exercises/04_traits/00_intro/src/lib.rs | 2 +- exercises/04_traits/01_trait/src/lib.rs | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/exercises/04_traits/00_intro/src/lib.rs b/exercises/04_traits/00_intro/src/lib.rs index 9513649..1b0f8ee 100644 --- a/exercises/04_traits/00_intro/src/lib.rs +++ b/exercises/04_traits/00_intro/src/lib.rs @@ -1,6 +1,6 @@ fn intro() -> &'static str { // TODO: fix me 👇 - "I'm ready to __!" + "I'm ready to learn about traits!" } #[cfg(test)] diff --git a/exercises/04_traits/01_trait/src/lib.rs b/exercises/04_traits/01_trait/src/lib.rs index 258eac5..ec0f18a 100644 --- a/exercises/04_traits/01_trait/src/lib.rs +++ b/exercises/04_traits/01_trait/src/lib.rs @@ -3,6 +3,22 @@ // // Then implement the trait for `u32` and `i32`. +pub trait IsEven { + fn is_even(self) -> bool; +} + +impl IsEven for u32 { + fn is_even(self) -> bool { + self % 2 == 0 + } +} + +impl IsEven for i32 { + fn is_even(self) -> bool { + self % 2 == 0 + } +} + #[cfg(test)] mod tests { use super::*;