在Rust中用更好的方式设置私有字段的参数
项目基于Rust闭包实现,让你可以通过如下形式链式调用(因为Rust没有默认的可变参数实现,如有需求可将相关setter方法放入vec中,也可实现功能)configure
方法来设置私有字段参数
fn main() {
let mut app = Application::default();
println!("{:?}", app);
// output: Application { name: "", version: V1 }
app.configure(
Application::set_name("set by opt")
)
.configure(
Application::set_version(version::Version::V2)
);
println!("{:?}", app);
// output: Application { name: "set by opt", version: V2 }
}
优点
- 可有效保护(限制)参数值
- 相比于直接通过
.field
设置字段值更优雅
Ext Link: https://github.com/t924417424/rust_opt_param
1
共 2 条评论, 1 页
评论区
写评论学习了。而且这个好像可以通过宏来实现
set_xxx
方法学习了!