为了了解 Rust 的工作原理,我决定研究一个基于终端的小型文本编辑器,称为Iota。我克隆了存储库并运行cargo build
只是被告知:
error: *if let* syntax is experimental help: add #![feature(if_let)] to the crate attributes to enable
我应该在哪里添加#![feature(if_let)]
到 crate 属性?
为了了解 Rust 的工作原理,我决定研究一个基于终端的小型文本编辑器,称为Iota。我克隆了存储库并运行cargo build
只是被告知:
error: *if let* syntax is experimental help: add #![feature(if_let)] to the crate attributes to enable
我应该在哪里添加#![feature(if_let)]
到 crate 属性?
crate 属性是#[...]
适用于封闭上下文 ( ) 的属性 ( #![...]
)。该属性必须添加到crate root的顶部,因此上下文就是 crate 本身:
#![attribute_name]
#![attribute_name(arg1, ...)]
如果您正在创建
lib.rs
.rs
你构建的主要文件。在许多情况下,这将被称为main.rs
tests/
examples/
Rust 编程语言和Rust 参考一般讨论了一些属性。Unstable Book包含功能标志列表和关于它们作用的简要文档。
有许多不同的 crate 属性,但feature
crate 属性 ( #![feature(feature1, feature2)]
) 只能在编译器的夜间版本中使用。不稳定的特性不允许在稳定的 Rust 版本中使用。