1 个不稳定发布
0.1.0 | 2024年1月18日 |
---|
#150 in #enum
7KB
63 代码行
快速枚举转换
此crate提供枚举之间的零成本转换。当满足以下条件时,可以将枚举 Src
转换为另一个枚举 Dest
:
- 对于
Src
的每个变体,在Dest
中存在对应的变体。
在这里,一个变体及其“对应”变体满足以下所有条件:
- 两者具有相同的标签名称
- 两者的字段相等。例如,一个具有结构化字段,另一个也应该具有相同的。
- 所有相应的字段类型都相同。
当所有对应项满足以下条件时,它执行零成本转换
- 它们的
std::mem::Discriminant
相等。 - 字段具有相同的偏移量。
- 具有一致的内存布局。
依赖关系
~1.5MB
~36K SLoC