summaryrefslogtreecommitdiff
path: root/patterns
diff options
context:
space:
mode:
authorAdam Carpenter <53hornet@gmail.com>2019-03-27 15:32:37 -0400
committerAdam Carpenter <53hornet@gmail.com>2019-03-27 15:32:37 -0400
commit67cdcc2e12118becb823e20a40cc2687f2b8425a (patch)
treeed92c3234b89079e6d4cf36f5e80c5ffa79def48 /patterns
parente25482fca375d318a39c3b54db396b0db6e0b263 (diff)
downloadlearning-rust-67cdcc2e12118becb823e20a40cc2687f2b8425a.tar.xz
learning-rust-67cdcc2e12118becb823e20a40cc2687f2b8425a.zip
Started Rust in Action MEAP.
Diffstat (limited to 'patterns')
-rw-r--r--patterns/Cargo.lock4
-rw-r--r--patterns/Cargo.toml7
-rw-r--r--patterns/src/main.rs316
3 files changed, 0 insertions, 327 deletions
diff --git a/patterns/Cargo.lock b/patterns/Cargo.lock
deleted file mode 100644
index a233623..0000000
--- a/patterns/Cargo.lock
+++ /dev/null
@@ -1,4 +0,0 @@
-[[package]]
-name = "patterns"
-version = "0.1.0"
-
diff --git a/patterns/Cargo.toml b/patterns/Cargo.toml
deleted file mode 100644
index 784a66d..0000000
--- a/patterns/Cargo.toml
+++ /dev/null
@@ -1,7 +0,0 @@
-[package]
-name = "patterns"
-version = "0.1.0"
-authors = ["Adam Carpenter <53hornet@gmail.com>"]
-edition = "2018"
-
-[dependencies]
diff --git a/patterns/src/main.rs b/patterns/src/main.rs
deleted file mode 100644
index 4ee101d..0000000
--- a/patterns/src/main.rs
+++ /dev/null
@@ -1,316 +0,0 @@
-fn main() {
-// let favorite_color: Option<&str> = None;
-// let is_tuesday = false;
-// let age: Result<u8, _> = "34".parse();
-//
-// if let Some(color) = favorite_color {
-// dbg!(color);
-// }
-// else if is_tuesday {
-// dbg!("green");
-// }
-// else if let Ok(age) = age {
-// if age > 30 {
-// dbg!("purple");
-// }
-// else {
-// dbg!("orange");
-// }
-// }
-// else {
-// dbg!("blue");
-// }
-
-
-// let mut stack = Vec::new();
-//
-// stack.push(1);
-// stack.push(2);
-// stack.push(3);
-//
-// while let Some(top) = stack.pop() {
-// dbg!(top);
-// }
-
-
-// let v = vec!['a', 'b', 'c'];
-//
-// for (_, value) in v.iter().enumerate() {
-// //println!("{} is at index {}", value, index);
-// dbg!(value);
-// }
-
-
-// let (..) = (1, 2, 3);
-
-
-// let point = (3, 5);
-// print_coords(&point);
-
-
-// let Some(x) = Some(5);
-// if let Some(x) = Some(5) {
-// dbg!(x);
-// }
-// if let x = 5 {
-// dbg!(x);
-// };
-
-
-// let x = 1;
-//
-// match x {
-// 1 => dbg!("one"),
-// 2 => dbg!("two"),
-// 3 => dbg!("three"),
-// _ => dbg!("else"),
-// };
-
-
-
-// let x = Some(5);
-// let y = 10;
-//
-// match x {
-// Some(50) => println!("got 50"),
-// Some(y) => println!("matched, y == {:?}", y),
-// _ => println!("default: x == {:?}", x),
-// }
-//
-// println!("end: x == {:?}, y == {:?}", x, y);
-
-
-// let x = 5;
-//
-// match x {
-// 1 ... 5 => println!("one through five"),
-// _ => println!("else"),
-// }
-
-
-// let x = 'w';
-//
-// match x {
-// 'a' ... 'j' => println!("early ascii char"),
-// 'k' ... 'z' => println!("late ascii char"),
-// _ => println!("else"),
-// }
-
-
-
-// let p = Point { x: 0, y: 7 };
-// //let Point { x: a, y: b } = p;
-// let Point { x, y } = p;
-// assert_eq!(0, x);
-// assert_eq!(7, y);
-
-
-// let p = Point { x: 1, y: 0 };
-//
-// match p {
-// Point { x, y: 0 } => dbg!("x-axis"),
-// Point { x: 0, y } => dbg!("y-axis"),
-// Point { x, y } => dbg!("neither"),
-// };
-
-
-// //let msg = Message::ChangeColor(0, 160, 255);
-// //let msg = Message::Write(String::from("hi there"));
-// //let msg = Message::Move {
-// // x: 1,
-// // y: 2,
-// //};
-// let msg = Message::ChangeColor(Color::Hsv(0, 160, 255));
-//
-// match msg {
-// Message::Quit => {
-// println!("the quit variant has no data to destructure.")
-// },
-// Message::Move { x, y } => {
-// println!(
-// "Move in the direction {}, {}",
-// x,
-// y
-// );
-// }
-// Message::Write(text) => println!("text message: {}", text),
-// Message::ChangeColor(Color::Rgb(r, g, b)) => {
-// println!(
-// "Change the color to RGB {}{}{}",
-// r,
-// g,
-// b
-// )
-// }
-// Message::ChangeColor(Color::Hsv(h, s, v)) => {
-// println!(
-// "Change the color to HSV {}{}{}",
-// h,
-// s,
-// v
-// )
-// }
-// }
-
-
-// let points = vec![
-// Point { x: 0, y: 0 },
-// Point { x: 1, y: 5 },
-// Point { x: 10, y: -3 },
-// ];
-//
-// let sum_of_squares: i32 = points
-// .iter()
-// .map(|&Point { x, y } | x * x + y * y)
-// .sum();
-// dbg!(sum_of_squares);
-//
-//
-// let ((feet, inches), Point { x, y }) = ((3, 10), Point { x: 3, y: -10 });
-
-
-// foo(3, 4);
-
-
-// let mut setting_value = Some(5);
-// //let new_setting_value = Some(10);
-// let new_setting_value = None;
-//
-// match (setting_value, new_setting_value) {
-// (Some(_), Some(_)) => {
-// println!("can't overwrite existing customized value.");
-// }
-// _ => {
-// setting_value = new_setting_value;
-// }
-// }
-//
-// println!("setting is {:?}", setting_value);
-//
-//
-// let numbers = (2, 4, 8, 16, 32);
-//
-// match numbers {
-// (first, _, third, _, fifth) => {
-// println!("numbers: {}, {}, {}", first, third, fifth)
-// },
-// }
-//
-//
-// let _x = 5;
-// let _y = 10;
-//
-//
-// let s = Some(String::from("hello"));
-//
-// if let Some(_) = s {
-// println!("found a string");
-// }
-//
-// println!("{:?}", s);
-
-
-// let origin = Point { x: 1, y: 2, z: 3 };
-//
-// match origin {
-// Point {x, .. } => dbg!(x),
-// };
-//
-// let numbers = (2, 4, 8, 16, 32);
-//
-// match numbers {
-// (first, .., last) => {
-// dbg!(first);
-// dbg!(last);
-// },
-// }
-
-
-// let num = Some(4);
-//
-// let test = match num {
-// Some(x) if x < 5 => println!("{}", x),
-// Some(x) => println!("{}", x),
-// None => (),
-// };
-
-
-// let x = Some(10);
-// let y = 10;
-//
-// match x {
-// Some(50) => println!("got 50"),
-// Some(n) if n == y => println!("{:?}", n),
-// _ => println!("{:?}", x),
-// }
-//
-// println!("{:?} {:?}", x, y);
-
-
-// let x = 4;
-// let y = false;
-//
-// match x {
-// 4 | 5 | 6 if y => println!("yes"),
-// _ => println!("no"),
-// }
-
-
- enum Message {
- Hello { id: i32 },
- }
-
- let msg = Message::Hello { id: 13 };
-
- match msg {
- Message::Hello { id: id_variable @ 3...7 } => {
- println!("{}", id_variable)
- },
- Message::Hello { id: 10...12 } => {
- println!("another range")
- },
- Message::Hello { id } => {
- println!("else")
- },
- }
-
-
- println!("Done.");
-}
-
-
-//struct Point {
-// x: i32,
-// y: i32,
-// z: i32,
-//}
-
-
-//fn foo(_: i32, y: i32) {
-// println!("this code only uses y: {}", y);
-//}
-
-
-//fn print_coords(&(x, y): &(i32, i32)) {
-// println!("{}, {}", x, y);
-//}
-
-
-//struct Point {
-// x: i32,
-// y: i32,
-//}
-
-
-//enum Message {
-// Quit,
-// Move { x: i32, y: i32 },
-// Write(String),
-// ChangeColor(Color),
-//}
-//
-//
-//enum Color {
-// Rgb(i32, i32, i32),
-// Hsv(i32, i32, i32)
-//}