struct SemanticDirection;
fn main() {}
warning: struct is never used: `SemanticDirection`
--> src/main.rs:1:1
|
1 | struct SemanticDirection;
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: #[warn(dead_code)] on by default
Je vais réactiver ces avertissements pour des raisons sérieuses, mais je ne fais que bricoler avec le langage et cela me pousse.
J'ai essayé d'ajouter #[allow(dead_code)]
à mon code, mais cela n'a pas fonctionné.
Vous pouvez soit:
Ajoutez un attribut allow
sur une structure, un module, une fonction, etc.:
#[allow(dead_code)]
struct SemanticDirection;
Ajoutez un attribut allow
au niveau de la caisse ; remarquez le !
:
#![allow(dead_code)]
Passez-le à rustc
:
rustc -A dead_code main.rs
Passez-le en utilisant cargo
via la variable d’environnement RUSTFLAGS
:
RUSTFLAGS="$RUSTFLAGS -A dead_code" cargo build
Une autre façon de désactiver cet avertissement consiste à préfixer l'identifiant par _
:
struct _UnusedStruct {
_unused_field: i32,
}
fn main() {
let _unused_variable = 10;
}
Cela peut être utile, par exemple, avec une fenêtre SDL:
let _window = video_subsystem.window("Rust SDL2 demo", 800, 600);
La préfixe avec un trait de soulignement est différente de l’utilisation d’un nom de soulignement isolé. Procédez comme suit pour détruire immédiatement la fenêtre, ce qui est peu probable.
let _ = video_subsystem.window("Rust SDL2 demo", 800, 600);
Rendre le code public arrête également les avertissements; vous devrez également rendre public le contenu de mod
qui le contient.
Cela a du sens lorsque vous écrivez une bibliothèque: votre code est "inutilisé" en interne car il est destiné à être utilisé par le code client.