Rust 1.59.0
主要发布内容:
- 内联汇编宏
asm!
(有华为参与贡献),支持 x86/x86-64 ARM AArch64 RISC-V; - 解构同时分配,允许先声明变量然后再分配绑定值;
let (a, b, c, d, e);
(a, b) = (1, 2);
[c, .., d, _] = [1, 2, 3, 4, 5];
Struct { e, .. } = Struct { e: 5, f: 3 };
assert_eq!([1, 2, 1, 4, 5], [a, b, c, d, e]);
常量泛型默认值,与放松泛型参数顺序。这意味着允许你在任意泛型参数前后插入常量泛型参数:
代码语言:javascript复制fn cartesian_product<
T, const N: usize,
U, const M: usize,
V, F
>(a: [T; N], b: [U; M], f: F) -> [[V; N]; M]
where
F: FnMut(&T, &U) -> V
{
// ...
}