enum Color{ red, green, blue } fn test_match_integers() { // a := 3 // mut b := 0 // match a { // 2 => println('two') // 3 => println('three') // b = 3 // 4 => println('four') // else => println('???') // } // assert b == 3 assert match 2 { 1 => {2} 2 => {3} else => {5} } == 3 assert match 0 { 1 => {2} 2 => {3} else => 5 } == 5 assert match 1 { else => {5} } == 5 mut a := 0 match 2 { 0 => {a = 1} 1 => {a = 2} else => { a = 3 println('a is $a') } } assert a == 3 a = 0 match 1 { 0 => {a = 1} 1 => { a = 2 a = a + 2 a = a + 2 } } assert a == 6 a = 0 match 1 { else => { a = -2 } } assert a == -2 } fn test_match_enums(){ mut b := Color.red match b{ .red => { b = .green } .green => {b = .blue} else => { println('b is ${b.str()}') b = .red } } assert b == .green match b{ .red => { b = .green } else => { println('b is ${b.str()}') b = .blue } } assert b == .blue }