#macro-derive #variant-name #enums #struct

derive-name

Derive 宏用于获取结构体、枚举或枚举变体的名称

5 个版本 (2 个稳定版本)

1.1.0 2023年7月28日
1.0.0 2023年7月27日
0.1.2 2023年3月27日
0.1.1 2023年3月27日
0.1.0 2023年3月27日

1342Rust 模式

Download history 26/week @ 2024-03-29 6/week @ 2024-04-05 5/week @ 2024-04-12 88/week @ 2024-04-19 124/week @ 2024-04-26 351/week @ 2024-05-03 18/week @ 2024-05-10 186/week @ 2024-05-17 31/week @ 2024-05-24 319/week @ 2024-05-31 305/week @ 2024-06-07 54/week @ 2024-06-14 3/week @ 2024-06-21

每月下载量 690

ISC 许可证

6KB
67 代码行

Derive Name

CI Crate Docs

Derive 宏用于获取结构体、枚举或枚举变体的名称。

名称

use derive_name::Name;

#[derive(Name)]
struct Alice;

#[derive(Name)]
enum Bob {}

assert_eq!(Alice::name(), "Alice");
assert_eq!(Bob::name(), "Bob");

命名

use derive_name::Named;

#[derive(derive_name::Name)]
struct Alice;

#[derive(derive_name::Name)]
enum Bob {
    Variant
}

let her = Alice {};
let his = Bob::Variant;

assert_eq!(her.name(), "Alice");
assert_eq!(his.name(), "Bob");

变体名称

use derive_name::VariantName;

#[derive(VariantName)]
enum Alice {
    Variant
}

assert_eq!(Alice::Variant.name(), "Variant");

贡献

如果你认为你发现了错误: 提交一个 issue。也欢迎提出功能请求。

许可证

本库根据 ISC 许可证 的条款进行分发。
choosealicense.com/licenses/isc 上找到对许可证的简单解释。

依赖

~285–740KB
~18K SLoC