From 4dfc11d74ab02ac5765ae5d08fb750c91f4744b4 Mon Sep 17 00:00:00 2001 From: Hunter Kvalevog Date: Fri, 2 Oct 2026 21:53:51 -0500 Subject: rustlings: move to rust/ --- rustlings/exercises/18_iterators/iterators2.rs | 63 -------------------------- 1 file changed, 63 deletions(-) delete mode 100644 rustlings/exercises/18_iterators/iterators2.rs (limited to 'rustlings/exercises/18_iterators/iterators2.rs') diff --git a/rustlings/exercises/18_iterators/iterators2.rs b/rustlings/exercises/18_iterators/iterators2.rs deleted file mode 100644 index c827529..0000000 --- a/rustlings/exercises/18_iterators/iterators2.rs +++ /dev/null @@ -1,63 +0,0 @@ -// In this exercise, you'll learn some of the unique advantages that iterators -// can offer. - -// TODO: Complete the `capitalize_first` function. -// "hello" -> "Hello" -fn capitalize_first(input: &str) -> String { - let mut chars = input.chars(); - match chars.next() { - None => String::new(), - Some(first) => first.to_uppercase().to_string() + &input[1..], - } -} - -// TODO: Apply the `capitalize_first` function to a slice of string slices. -// Return a vector of strings. -// ["hello", "world"] -> ["Hello", "World"] -fn capitalize_words_vector(words: &[&str]) -> Vec { - let mut v = Vec::new(); - for word in words { - if !word.trim().is_empty() { - v.push(capitalize_first(word)); - } - } - v -} - -// TODO: Apply the `capitalize_first` function again to a slice of string -// slices. Return a single string. -// ["hello", " ", "world"] -> "Hello World" -fn capitalize_words_string(words: &[&str]) -> String { - capitalize_words_vector(words).join(" ") -} - -fn main() { - // You can optionally experiment here. -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn test_success() { - assert_eq!(capitalize_first("hello"), "Hello"); - } - - #[test] - fn test_empty() { - assert_eq!(capitalize_first(""), ""); - } - - #[test] - fn test_iterate_string_vec() { - let words = vec!["hello", "world"]; - assert_eq!(capitalize_words_vector(&words), ["Hello", "World"]); - } - - #[test] - fn test_iterate_into_string() { - let words = vec!["hello", " ", "world"]; - assert_eq!(capitalize_words_string(&words), "Hello World"); - } -} -- cgit v1.2.3