#variant #enums #struct #map #store #macro-derive #struct-fields

variant-map-derive

variant-map crate 的 derive 宏,添加了一个名为 StructMap 的类型

1 个不稳定版本

0.1.0 2023 年 9 月 6 日

#125#struct-fields


用于 variant-map

MIT 许可证

43KB
828 代码行

variant-map-derive

将枚举变体存储在映射中。

variant_map 提供 derive 宏

包括一个 StructMap,它是一个结构体,每个枚举变体都有一个字段

优点:这个结构体可以即时访问字段(与其他需要查找的映射相比)

缺点:API 受限

示例

    use variant_map_derive::VariantStore;

    #[derive(VariantStore)]
    enum MyEnum {
        A,
        B(i32),
    }

要查看更多详细示例,请访问此 crate 的 示例项目


lib.rs:

将枚举变体存储在映射中。

variant_map 提供 derive 宏

包括一个 StructMap,它是一个结构体,每个枚举变体都有一个字段

优点:这个结构体可以即时访问字段(与其他需要查找的映射相比)

缺点:API 受限

示例

    use variant_map_derive::VariantStore;

    #[derive(VariantStore)]
    enum MyEnum {
        A,
        B(i32),
    }

要查看更多详细示例,请访问此 crate 的 示例项目

依赖项

~0.7–1.3MB
~30K SLoC