summaryrefslogtreecommitdiff
path: root/rustlings/solutions
diff options
context:
space:
mode:
Diffstat (limited to 'rustlings/solutions')
-rw-r--r--rustlings/solutions/10_modules/modules1.rs15
-rw-r--r--rustlings/solutions/10_modules/modules2.rs23
-rw-r--r--rustlings/solutions/10_modules/modules3.rs8
3 files changed, 40 insertions, 6 deletions
diff --git a/rustlings/solutions/10_modules/modules1.rs b/rustlings/solutions/10_modules/modules1.rs
index dcf2377..873b412 100644
--- a/rustlings/solutions/10_modules/modules1.rs
+++ b/rustlings/solutions/10_modules/modules1.rs
@@ -1,4 +1,15 @@
+mod sausage_factory {
+ fn get_secret_recipe() -> String {
+ String::from("Ginger")
+ }
+
+ // Added `pub` before `fn` to make the function accessible outside the module.
+ pub fn make_sausage() {
+ get_secret_recipe();
+ println!("sausage!");
+ }
+}
+
fn main() {
- // DON'T EDIT THIS SOLUTION FILE!
- // It will be automatically filled after you finish the exercise.
+ sausage_factory::make_sausage();
}
diff --git a/rustlings/solutions/10_modules/modules2.rs b/rustlings/solutions/10_modules/modules2.rs
index dcf2377..55c316d 100644
--- a/rustlings/solutions/10_modules/modules2.rs
+++ b/rustlings/solutions/10_modules/modules2.rs
@@ -1,4 +1,23 @@
+mod delicious_snacks {
+ // Added `pub` and used the expected alias after `as`.
+ pub use self::fruits::PEAR as fruit;
+ pub use self::veggies::CUCUMBER as veggie;
+
+ mod fruits {
+ pub const PEAR: &str = "Pear";
+ pub const APPLE: &str = "Apple";
+ }
+
+ mod veggies {
+ pub const CUCUMBER: &str = "Cucumber";
+ pub const CARROT: &str = "Carrot";
+ }
+}
+
fn main() {
- // DON'T EDIT THIS SOLUTION FILE!
- // It will be automatically filled after you finish the exercise.
+ println!(
+ "favorite snacks: {} and {}",
+ delicious_snacks::fruit,
+ delicious_snacks::veggie,
+ );
}
diff --git a/rustlings/solutions/10_modules/modules3.rs b/rustlings/solutions/10_modules/modules3.rs
index dcf2377..99ff5a7 100644
--- a/rustlings/solutions/10_modules/modules3.rs
+++ b/rustlings/solutions/10_modules/modules3.rs
@@ -1,4 +1,8 @@
+use std::time::{SystemTime, UNIX_EPOCH};
+
fn main() {
- // DON'T EDIT THIS SOLUTION FILE!
- // It will be automatically filled after you finish the exercise.
+ match SystemTime::now().duration_since(UNIX_EPOCH) {
+ Ok(n) => println!("1970-01-01 00:00:00 UTC was {} seconds ago!", n.as_secs()),
+ Err(_) => panic!("SystemTime before UNIX EPOCH!"),
+ }
}