1个不稳定版本
0.1.0 | 2019年11月8日 |
---|
#1910 in 数据结构
5KB
svec
Svec 允许您在 Rust 中创建美丽且易于阅读的 Dart 风格列表。
如果您在 Rust 中创建一个列表,您可能正在使用 vec
。
// a list
let row = vec![
Elem::IconButton("hamburger"),
Elem::Space,
Elem::IconButton("info"),
Elem::IconButton("profile")
];
svec
允许您执行所有可以用 vec
执行的操作,但它还增加了 "集合 if" 和 "集合 for"。
// a list with svec
let row = svec![
Elem::IconButton("hamburger"),
Elem::Space,
Elem::IconButton("info"),
Elem::IconButton("profile"),
if isLiteVersion { Elem::IconButton("store") }
];
这是一个 "集合 for" 的示例。
// a list with vec + svec
let row = vec![
Elem::IconButton("hamburger"),
Elem::Space,
Elem::IconButton("info"),
Elem::IconButton("profile"),
Elem::MenuBar(svec![
for friend in friends.take(3) { Elem::MenuItem(friend) },
Elem::MenuItem("All friends"),
Elem::MenuItem("All people"),
])
];
在项目中使用 svec
非常简单。
- 将
svec = 0.1.0
添加到您的Cargo.toml
中。 - 添加
use svec::*
。
依赖关系
~1.5MB
~33K SLoC