第 5 章 Rust 1.66.1 Toolset 中的更改
Rust Toolset 已从 RHEL 7、RHEL 8 和 RHEL 9 版本 1.62.1 更新至 1.66.1。
主要变更包括:
-
thread::scopeAPI 创建一个字典范围,其中本地变量可以被新生成的线程安全地借用,且这些线程都保证在范围结束前退出。 -
hint::black_boxAPI 向编译器优化添加了一个障碍,这对于保留基准中的行为很有用,否则这些行为可能会被优化掉。 -
.await关键字现在使用IntoFuture特征进行转换,类似于for和IntoIterator之间的关系。 - 通用关联类型(GAT)允许特征包含具有通用参数的类型别名,对类型和生命周期启用新抽象。
-
新的
let-else语句允许本地变量与条件模式匹配绑定,在模式不匹配时执行分支else块。 -
标记的块允许
break语句跳到块的末尾,可选包括表达式值。 -
Rust
-analyzer是语言服务器协议的新实现,在很多编辑器中启用 Rust 支持。这取代了以前的rls软件包,但您可能需要调整编辑器配置以迁移到rust-analyzer。 -
cargo 有一个新的
cargo remove子命令,用于从 libpmemgo.toml中删除依赖项。