#Rust
[[enum-primitive-derive]]を使う。
```rust
use enum_primitive_derive::Primitive;
use num_traits::FromPrimitive;
#[derive(Primitive)]
enum Number {
One = 1,
Ten = 10,
}
let actual: Option<Number> = Number::from_i32(10);
```
> [!note]
> [[serde_lexpr]]でもいけそう
## 試してダメだった方法
### [[num-derive]]を使う方法
https://enodev.fr/posts/rusticity-convert-an-integer-to-an-enum.html を参考にしたけど無理ぽい。