4 个版本
0.2.2 | 2022 年 2 月 15 日 |
---|---|
0.2.1 | 2022 年 1 月 31 日 |
0.2.0 | 2022 年 1 月 31 日 |
0.1.0 | 2022 年 1 月 30 日 |
#1646 在 开发工具
每月 42 次下载
用于 3 个 Crates (2 个直接使用)
10KB
167 行
更多集合宏
作者:Joshua Radin
仓库
此库提供了一组创建 std 集合 的实用宏,类似于默认的 vec!
宏
理解
这些宏启用类似于 Python 中的列表/映射理解。例如,以下 Python 代码
list = [x*x for x in range(0,10)]
dict = {x : x*x for x in range(0,10)}
相当于以下 Rust 代码
let list = list![x*x; x in 0..10];
let dict = map!{x => x*x; x in 0..10};
命名空间样式
对于映射,您还可以使用标识符作为键,然后将其转换为 &'static str
键。
map!{
field1: 0,
field2: 1
};
使用此表示法不能重复字段。以下将引发 运行时 错误。
map!{
field1: 0,
field1: 1
};
lib.rs
:
更多集合宏
此库提供了一组创建 std 集合 的实用宏,类似于默认的 vec!
宏
理解
这些宏启用类似于 Python 中的列表/映射理解。例如,以下 Python 代码
list = [x*x for x in range(0,10)]
dict = {x : x*x for x in range(0,10)}
相当于以下 Rust 代码
let list = list![x*x; x in 0..10];
let dict = map!{x => x*x; x in 0..10};
命名空间样式
对于映射,您还可以使用标识符作为键,然后将其转换为 &'static str
键。
map!{
field1: 0,
field2: 1
};
使用这些表示法不能重复字段。以下将引发 运行时 错误。
map!{
field1: 0,
field1: 1
};