diff --git a/src/doc/trpl/patterns.md b/src/doc/trpl/patterns.md index 93df0f19e8eeb..270e31e9ffb50 100644 --- a/src/doc/trpl/patterns.md +++ b/src/doc/trpl/patterns.md @@ -196,12 +196,27 @@ struct Point { let origin = Point { x: 0, y: 0 }; match origin { - Point { x: x, y: y } => println!("({},{})", x, y), + Point { x, y } => println!("({},{})", x, y), } ``` [struct]: structs.html +We can use `:` to give a value a different name. + +```rust +struct Point { + x: i32, + y: i32, +} + +let origin = Point { x: 0, y: 0 }; + +match origin { + Point { x: x1, y: y1 } => println!("({},{})", x1, y1), +} +``` + If we only care about some of the values, we don’t have to give them all names: ```rust @@ -213,7 +228,7 @@ struct Point { let origin = Point { x: 0, y: 0 }; match origin { - Point { x: x, .. } => println!("x is {}", x), + Point { x, .. } => println!("x is {}", x), } ``` @@ -230,7 +245,7 @@ struct Point { let origin = Point { x: 0, y: 0 }; match origin { - Point { y: y, .. } => println!("y is {}", y), + Point { y, .. } => println!("y is {}", y), } ```