3 个不稳定版本

0.2.1 2023年12月16日
0.2.0 2022年5月30日
0.1.0 2022年4月4日

#1234Rust 模式

Download history • Rust 包仓库 108/week @ 2024-03-11 • Rust 包仓库 48/week @ 2024-03-18 • Rust 包仓库 54/week @ 2024-03-25 • Rust 包仓库 196/week @ 2024-04-01 • Rust 包仓库 113/week @ 2024-04-08 • Rust 包仓库 48/week @ 2024-04-15 • Rust 包仓库 73/week @ 2024-04-22 • Rust 包仓库 48/week @ 2024-04-29 • Rust 包仓库 81/week @ 2024-05-06 • Rust 包仓库 101/week @ 2024-05-13 • Rust 包仓库 158/week @ 2024-05-20 • Rust 包仓库 143/week @ 2024-05-27 • Rust 包仓库 54/week @ 2024-06-03 • Rust 包仓库 145/week @ 2024-06-10 • Rust 包仓库 89/week @ 2024-06-17 • Rust 包仓库 60/week @ 2024-06-24 • Rust 包仓库

352 每月下载量

MIT 许可证

11KB
122

Inter-struct 提供了各种 derive 宏,以在任意结构体之间实现特质。

当前可用的 derive 宏包括

  • StructMerge
  • StructMergeRef
  • StructInto
  • StructDefault

使用此类 derive 宏的一般方式如下

#[derive(StructInto)]
#[struct_into(["crate::path_to::TargetStruct"])]
pub struct Test {
    pub test: String,
}

此示例生成一个 impl Into<TargetStruct> for Test,它将 Test 转换为某个 TargetStruct

请注意,目标结构体的路径必须

  • 包含在此包中。
  • 相对于当前包。

可以指定单个路径或路径列表。然后将为每个指定的目标结构体实现特质。

#[struct_into("crate::path_to::TargetStruct")]
// or
#[struct_into(["crate::path_to::TargetStruct", "crate::path_to::AnotherTargetStruct"])]

每个 derive 宏都可以有自己的选项,因此请查看此包中每个 derive 宏的单独文档。

依赖

~280–730KB
~18K SLoC