2014-12-13 33 views
27

爲了感受Rust如何工作,我決定看一下名爲Iota的基於終端的小型文本編輯器。我克隆的資源庫,跑到cargo build卻被告知:什麼是箱子屬性,我在哪裏添加它?

error: *if let* syntax is experimental 

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

我應該在哪裏添加#![feature(if_let)]板條箱屬性?

+2

作爲一個側面說明,較新的(夜間)Rust的版本默認啓用了此功能,因此更新Rust也會消除您的問題。 – Shepmaster 2014-12-13 03:16:48

回答

24

箱子屬性是應用於封閉上下文(#![...])的屬性(#[...])。此屬性必須添加到您的箱根的頂部,這樣的背景下是箱子本身:

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

如果你正在創建一個圖書館,板條箱根將是一個名爲lib.rs文件。如果你正在創建一個應用程序,那麼這個箱根就是你構建的主文件.rs


The Rust Programming Language, first edition談到「板條箱僅屬性」有點對一般屬性,並且Rust Reference會談。 The Unstable Book包含功能標記列表和他們所做的簡要文檔。

有許多不同的板條箱的屬性,但feature箱屬性(#![feature(feature1, feature2)])可以僅在夜間版本的編譯器來使用。不穩定的功能不允許在穩定的Rust版本中使用。

相關問題