Um ein Gefühl dafür zu bekommen, wie Rust funktioniert, habe ich mich für einen kleinen terminalbasierten Texteditor namens Iota entschieden . Ich habe das Repository geklont und bin cargo build
nur gelaufen , um zu erfahren:
error: *if let* syntax is experimental help: add #![feature(if_let)] to the crate attributes to enable
Wo soll ich die Kistenattribute ergänzen #![feature(if_let)]
?
rust
rust-cargo
Soham Chowdhury
quelle
quelle
Antworten:
Ein Kistenattribut ist ein Attribut (
#[...]
), das für den umschließenden Kontext (#![...]
) gilt. Dieses Attribut muss oben in Ihrer Kistenwurzel hinzugefügt werden , daher ist der Kontext die Kiste selbst:#![attribute_name] #![attribute_name(arg1, ...)]
Wenn Sie erstellen
lib.rs
.rs
Datei, die Sie erstellen. In vielen Fällen wird dies aufgerufenmain.rs
tests/
examples/
Die Rust-Programmiersprache und die Rust-Referenz sprechen ein wenig über Attribute im Allgemeinen. Das instabile Buch enthält eine Liste von Funktionsflags und eine kurze Dokumentation zu deren Funktionsweise.
Es gibt viele verschiedene Kistenattribute, aber das
feature
Kistenattribut (#![feature(feature1, feature2)]
) kann nur in einer nächtlichen Version des Compilers verwendet werden. Instabile Funktionen dürfen in stabilen Rust-Versionen nicht verwendet werden.quelle