型列挙型はenumで定義します。使う時はそのいくつかの型から1つを使いたいような場合に使います。それはエラー型をまとめたものなどです。Baz;これに対してenum、Valueを定義します。Baz,}属する型はValueとして束縛することができるようになります。ようにいくつかのトレイトをderiveにより実装することができます。上記のようにenumで束縛ができる為、関数などに渡した時にそのenumが実際にはどれか分からないという問題があります。それにはmatchによる条件分岐で処理を分けることで解決できます。}}assert!(is_foo(&_foo));assert!(!is_foo(&_bar));。