3 个版本
0.1.2 | 2022年9月17日 |
---|---|
0.1.1 | 2022年9月16日 |
0.1.0 | 2022年9月16日 |
#1328 in 开发工具
45 每月下载次数
13KB
333 代码行
Eg: Default
用于虚拟数据。
为什么是 Eg?
使用 Eg
提供示例值
use eg::Eg;
#[derive(Debug, PartialEq, Eg)]
struct Wizard {
#[eg = "Harry Potter"]
name: String,
#[eg = "11"]
age: usize,
#[eg = "totally_random_spell"]
fav_spell: Spell,
}
#[derive(Debug, PartialEq)]
enum Spell {
Expelliarmus,
WinguardiumLeviosa,
}
fn totally_random_spell() -> Spell {
Spell::Expelliarmus
}
assert_eq!(
Wizard {
name: "Harry Potter".to_string(),
age: 11,
fav_spell: Spell::Expelliarmus
},
Wizard::eg()
);
当 Default
不适用、不可用或表达不够充分时
#[test]
fn my_database_test() {
// database stuff ...
db.insert(Wizard::eg());
// more database stuff ...
}
为什么不使用全局 const
?
在与 const
兼容的上下文中,这可能是可接受的方法!对于其他所有情况,还有 Eg
😉
贡献
这个包仍在学习走路;反馈、问题和 PR 都受欢迎!(◕‿◕)
依赖
~1.5MB
~35K SLoC