if some_conditional { do_stuff(); } else if some_other_conditional { do_other_stuff(); } else { destroy_humanity(); } // If statements are also expressions and will yield the value of the last expression in each block let x = if y > z { y + 1 } else { z * 4 }; // Pattern matching may also be used struct Point { x: i32, y: i32, } fn some_function(p: Option) { if let Some(Point { x: x_coord, y: y_coord }) = p { // Do something with x_coord and y_coord } }