在 Rust 中实现简单派生宏的可复制指南。

时间:2021-06-28 19:37:37
【文件属性】:
文件名称:在 Rust 中实现简单派生宏的可复制指南。
文件大小:6KB
文件格式:ZIP
更新时间:2021-06-28 19:37:37
rust-derive-macro-guide #[派生(MyTrait)]在 Rust 中实现简单派生宏的可复制指南。目标假设我们有一个 getter 特性traitMyTrait {fnanswer () ->i32 {42 } }我们希望能够导出它并初始化 getter#[derive(MyTrait)]structFoo ; #[derive(MyTrait)] #[my_trait(answer = 0)]structBar ; #[test]fndefault () {assert_eq! (Foo::answer (),42 ); } #[test]fngetter () {assert_eq! (Bar::answer (),0 ); }所以这些派生将扩展为implMyTraitforFoo {}implMyTraitforBar {fnanswer () ->i32 {0 } }步骤 0:先决条件安装 Cargo 扩展工具cargo install cargo-edit cargo install cargo-expand第 1 步:宏的单独板条箱Proc 宏应该放
【文件预览】:
rust-derive-macro-guide-main
----Cargo.toml(266B)
----Cargo.lock(2KB)
----mytrait-derive()
--------Cargo.toml(246B)
--------Cargo.lock(2KB)
--------src()
----src()
--------lib.rs(298B)
----README.md(4KB)
----.gitignore(8B)

网友评论