14 个版本
0.5.4 | 2023 年 1 月 1 日 |
---|---|
0.5.3 | 2021 年 1 月 15 日 |
0.5.2 | 2020 年 12 月 20 日 |
0.4.4 | 2020 年 12 月 9 日 |
0.1.2 | 2020 年 11 月 25 日 |
#242 在 数据结构
9,476 每月下载量
用于 34 个 包(17 个直接使用)
18KB
Velcro
一组宏,用于从 Rust 的 std
和迭代器方便地初始化集合。所有宏都支持一元 ..
操作符,该操作符可以“展开”另一个集合或迭代器的值。
velcro::vec!
是 std::vec!
的直接替代品。它支持所有 std
宏的功能,没有开销,同时支持使用 ..
操作符展开值。
示例
use velcro::{hash_map, iter, vec};
assert_eq!(vec![0, 1, ..(2..7)], vec![0, 1, 2, 3, 4, 5, 6]);
let other = vec![3, 4, 5];
assert_eq!(vec![0, 1, 2, ..&other, 6], vec![0, 1, 2, 3, 4, 5, 6]);
let whitespace = iter![' ', '\t', '\r', '\n'];
let map = hash_map! {
..('0'..='9'): "digit",
..('a'..='z'): "lower",
..('A'..='Z'): "upper",
..whitespace: "whitespace",
'.': "punctuation",
',': "punctuation",
};
assert_eq!(map[&'x'], "lower");
assert_eq!(map[&'\r'], "whitespace");
assert_eq!(map[&'.'], "punctuation");
帮助
如需帮助、提问或报告问题,请使用 GitHub 问题跟踪器。
依赖项
~1.5MB
~36K SLoC