Развернуть внутренний тип, когда известен вариант 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!() }
}

Могу ли я написать этот более короткий и / или более идиоматический?