У меня есть перечисление со многими значениями
enum Foo {
Bar = 0x00,
Baz = 0x01,
Qux = 0x02,
...
Quux = 0xFF
}
и иногда я хотел бы записать имя одного из его значений в поток. Я могу получить Debug
и сделать
writer.write(format!("I am {:?}", Foo::Quux).as_bytes())
который будет выводиться, например. I am Quux
. Это прекрасно, за исключением того, что
- Я хочу сделать это для вывода, ориентированного на пользователя, поэтому отладка не подходит
- Было бы очень полезно получить перечисление в виде строки (а не напрямую писать в поток), потому что тогда я могу включить ее длину в некоторые неуловимые вычисления форматирования, которые я хочу сделать.
Какой лучший способ достичь этого?