上級 › E0004: non-exhaustive patterns の原因と直し方 › パターン1
E0004: non-exhaustive patterns の原因と直し方
match式は、値が取りうるすべてのパターンを網羅していなければコンパイルできません。
1 enum Level { Beginner, Intermediate, Advanced } 2 fn main() { 3 let level = Level::Intermediate; 4 let name = match level { 5 Level::Beginner => "beginner", 6 _____________________________________________________________________________ ^ 7 }; 8 println!("{}", name); 9 }
error[E0004]: non-exhaustive patterns: `Level::Advanced` not covered
空欄を埋めて実行を通す
match式はenumが取りうる全ての変体を網羅しなければコンパイルできません。Advancedのアームが抜けています。
次の問題