1 个不稳定版本
0.1.0 | 2022年11月15日 |
---|
#1996 在 进程宏
56KB
83 行
描述
这个宏让你的结构体字段变为
pub
,省去在每个字段名前加pub
的操作;注意:仅作用于字段上,对结构体的可见性没有影响
此宏将在你的结构体字段前添加
pub
;注意:它不会在结构体前添加pub
示例
use pub_this::pub_this;
#[pub_this]
struct Father<T> {
pub name: String,
age: usize,
child: T,
}
mod children{
use pub_this::pub_this;
#[pub_this]
pub struct Son {
name: String,
age: usize,
}
pub struct Daughter {
name: String,
age: usize,
}
}
fn main() {
let f1 = Father {
name: "me".to_string(),
age: 55,
child: children::Son {
name: "You".to_string(),
age: 10,
},
};
let f2 = Father {
name: "me".to_string(),
age: 55,
child: children::Daughter {
name: "You".to_string(), // hint private field
age: 10, // hint private field
},
};
println!{"{}",f1.child.name}
}
展开
展开后是这样的
依赖
~1.5MB
~35K SLoC