Rust 中的 Swift 风格的键路径

时间:2024-07-18 13:29:22
【文件属性】:

文件名称:Rust 中的 Swift 风格的键路径

文件大小:28KB

文件格式:ZIP

更新时间:2024-07-18 13:29:22

keypath

keypath对任意嵌套字段的强类型引用。这是在 Rust 中实现 Swift 风格的键路径的早期实验。它目前旨在作为概念证明,并且缺少一些更高级的功能,例如“部分键路径”和可组合性,尽管实现这些不应该特别具有挑战性。这里做的事情包括是什么,我相信是产生对于在编译时保证任意类型的输入keypaths最困难的情况下,。这意味着您可以执行以下操作:= keypath!(Person.friends[0]);让 heft = keypath!(Person.size.heft);assert_eq!(person[&first_friend], "eli");// 变异:person[&heft] = 101;assert_eq!(person.size.heft, 101);">#[derive(Keyable)]structPerson { name:String , friends:Vec , size: Size, } #[derive(Keyable)]structSize { big:bool ,


【文件预览】:
keypath-main
----keypath-proc-macros()
--------tests()
--------src()
--------Cargo.toml(557B)
----keypath()
--------tests()
--------src()
--------Cargo.toml(353B)
----LICENSE(11KB)
----Cargo.toml(60B)
----.gitignore(40B)
----sketch.rs(1KB)
----README.md(2KB)

网友评论