flow_of_control.rs (679B)
1 fn main() { 2 let mut opt = 2; 3 let text = if opt == 1 { 4 "option one" 5 } else if opt == 2 { 6 "option two" 7 } else { 8 "other" 9 }; 10 println!("{}", text); 11 println!("NESTING AND LABELS"); 12 'outer: loop { 13 loop { 14 println!("inner, count: {}", opt); 15 opt += 1; 16 if opt > 5 { 17 break 'outer; 18 } 19 if opt > 3 { 20 break; 21 } 22 } 23 println!("outer") 24 } 25 println!("RETURNING FROM LOOP"); 26 let result = loop { 27 opt += 1; 28 if opt == 10 { 29 break opt * 2; 30 } 31 }; 32 assert_eq!(result, 20); 33 }