Desenvuelva el tipo interno cuando se conoce la variante enum

Tengo este tipo de enumeración:

enum Animal {
    Dog(i32),
    Cat(u8),
}

Ahora tengo una función que toma este tipo como parámetro. yosaber (por alguna razón) que la entrada siempre es unCat. Quiero lograr esto:

fn count_legs_of_cat(animal: Animal) -> u8 {
    if let Animal::Cat(c) = animal { c } else { unreachable!() }
}

¿Puedo escribir esto más corto y / o más idiomático?

Respuestas a la pregunta(1)

Su respuesta a la pregunta