什么是板条箱属性,应在何处添加?


78

为了了解Rust的工作原理,我决定看一个名为Iota的基于终端的小型文本编辑器。我克隆了存储库,然后cargo build被告知:

error: *if let* syntax is experimental

help: add #![feature(if_let)] to the crate attributes to enable

我应该在哪里添加#![feature(if_let)]到板条箱属性?


3
附带说明一下,默认情况下,较新(每晚)的Rust版本(默认)已启用此功能,因此更新Rust也将解决您的问题。
Shepmaster 2014年

Answers:


79

板条箱属性是#[...]适用于封闭环境(#![...])的属性()。此属性必须添加到板条root的顶部,因此上下文是板条本身:

#![attribute_name]
#![attribute_name(arg1, ...)]

如果您正在创建

  • 一个库—板条箱根将是一个名为 lib.rs
  • 一个应用程序-板条箱根将是.rs您构建的主文件。在许多情况下,这称为main.rs
  • 集成测试-板条箱根是其中的每个文件 tests/
  • 一个例子-板条箱根是其中的每个文件 examples/

Rust编程语言Rust参考一般都谈到了属性。不稳定的书包含功能标记的列表以及有关其功能的简要文档。

有许多不同的板条箱属性,但feature板条箱属性(#![feature(feature1, feature2)])只能在夜间版本的编译器中使用。不稳定的功能不允许在稳定的Rust版本中使用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.