From 56f54bdeef3f13a127ebf27990c2052e7c60bf21 Mon Sep 17 00:00:00 2001 From: Dane Sabo Date: Mon, 24 Mar 2025 09:38:53 -0400 Subject: [PATCH] vault backup: 2025-03-24 09:38:53 --- .../Rust/Chapter 2 - Guessing Game.md | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/3-99 Research/Rust/Chapter 2 - Guessing Game.md b/3-99 Research/Rust/Chapter 2 - Guessing Game.md index b978521bc..2ec5fc06d 100644 --- a/3-99 Research/Rust/Chapter 2 - Guessing Game.md +++ b/3-99 Research/Rust/Chapter 2 - Guessing Game.md @@ -4,3 +4,24 @@ a random number, and compares the two to say whether the guess is correct, lower, or higher. It introduces us to key concepts in Rust such as module importing, the idea of mutability, how to define variables, and other interesting type things. + +## Breaking Down some things +### Types, and variants +When creating the variable `guess` we created it as + +```rust +let mut guess = String::new(); +``` + +where we call `String::new()`. `String` is a type, that has a function `new` +integrated into that type. + +Then, we read in the data. Some interesting things happen here: +1. We use `&mut guess` where `&` signifies a *reference* to an object +2. We have an `.expect()` + a. `.read_line` returns a string, but it also returns a result + b. This result is an *enumeration* type, with each possible + result being a *variant*. + +Wacky stuff. +