Развернуть внутренний тип, когда известен вариант enum
У меня есть этот тип enum:
enum Animal {
Dog(i32),
Cat(u8),
}
Теперь у меня есть функция, которая принимает этот тип в качестве параметра. язнать (по какой-то причине), что вход всегдаCat
, Я хочу добиться этого:
fn count_legs_of_cat(animal: Animal) -> u8 {
if let Animal::Cat(c) = animal { c } else { unreachable!() }
}
Могу ли я написать этот более короткий и / или более идиоматический?