#macro #comprehension #list #builder #语法扩展

nightly list_builder

Rust 中类似 Python 的列表推导式

2 个版本

使用旧的 Rust 2015

0.0.2 2015年3月21日
0.0.1 2015年3月21日

17 in #comprehension

MIT 许可证

3KB

Rust 列表构建器

列表/集合/生成器推导式是 Python 和 Haskell 的最佳特性之一。它们使创建复杂可迭代对象变得更加简单和直观。此 crate 试图将类似功能添加到 Rust 语言中。

此 crate 提供了 gen! 宏。其语法类似于 Python 列表推导式

#[macro_use(gen)]
#[no_link]
extern crate list_builder;

fn main() {
	let x: Vec<i32> = gen![i*1000 => i in [1, 2, 3, 4, 5, 6]];
}

您可以使用条件语句,就像在 Python 中一样

let x: Vec<i32> = gen![i*1000 => i in [1, 2, 3, 4, 5, 6], i % 2 == 0];
assert_eq!(x, vec![2000, 4000, 6000]);

无运行时依赖项