From 1e76dc4a172c9e8bbe53a483a0e60ab13717aaf4 Mon Sep 17 00:00:00 2001 From: Mattrixwv Date: Thu, 11 Jun 2020 16:55:56 -0400 Subject: [PATCH] Added chapter 7 --- src/Expressions.rs | 31 +++++++++++++++++++++++++++++++ src/main.rs | 10 +++++++--- 2 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 src/Expressions.rs diff --git a/src/Expressions.rs b/src/Expressions.rs new file mode 100644 index 0000000..4d9cdc7 --- /dev/null +++ b/src/Expressions.rs @@ -0,0 +1,31 @@ +pub fn main(){ + /* + //variable binding + let x = 5; + + //expression; + x; + x + 1; + 15; + */ + + let x = 5u32; + + let y = { + let x_squared = x * x; + let x_cube = x_squared * x; + + //This expression will be assigned to `y` + x_cube + x_squared + x + }; + + #[allow(unused_must_use)] + let z = { + //The semicolon suppresses this expression and `()` is assigned to `z` + 2 * x; + }; + + println!("x is {:?}", x); + println!("y is {:?}", y); + println!("z is {:?}", z); +} diff --git a/src/main.rs b/src/main.rs index 0a9ecf4..f72c077 100644 --- a/src/main.rs +++ b/src/main.rs @@ -7,6 +7,7 @@ mod CustomTypes; mod VariableBindings; mod Types; mod Conversion; +mod Expressions; fn main(){ @@ -69,9 +70,12 @@ fn main(){ //6 Conversion //6.1 From and Into - Conversion::FromAndInto::main(); + //Conversion::FromAndInto::main(); //6.2 TryFrom and TryInto - Conversion::TryFromAndTryInto::main(); + //Conversion::TryFromAndTryInto::main(); //6.3 To and From Strings - Conversion::ToAndFromStrings::main(); + //Conversion::ToAndFromStrings::main(); + + //7 Expressions + Expressions::main(); }