Destructuring Structs
You can also destructure structs:
struct Foo {x: (u32, u32),y: u32,}#[rustfmt::skip]fn main() {let foo = Foo { x: (1, 2), y: 3 };match foo {Foo { x: (1, b), y } => println!("x.0 = 1, b = {b}, y = {y}"),Foo { y: 2, x: i } => println!("y = 2, i = {i:?}"),Foo { y, .. } => println!("y = {y}, other fields were ignored"),}}
Speaker Notes
#[rustfmt::skip]disables rust formatting for the following block of code