Estou tentando aprender Rust e tentando escrever um programa simples que receba argumentos da linha de comando para me acostumar com alguns conceitos básicos. O código que escrevi para lidar com os argumentos falha e sinto que estou perdendo algum conceito básico.
fn process_args(args: Vec<String>) {
let my_string: String = String::from("--verbose");
for item in &args[1..] {
match item{
my_string=>do_something_with_argument(),
_=>println!("unexpected argument {item}"),
}
}
}
Onde vscode me diz que a variável 'my_string' não é utilizada. Também experimentei esta versão:
fn process_args(args: Vec<String>) {
for item in &args[1..] {
match item{
"--verbose"=>do_something_with_argument(),
_=>println!("unexpected argument {item}"),
}
}
}
que falha porque a string literal não pode ser correspondida com uma string, então tentei:
fn process_args(args: Vec<String>) {
for item in &args[1..] {
match item{
String::from("--verbose")=>do_something_with_argument(),
_=>println!("unexpected argument {item}"),
}
}
}
O que também não funciona.
O que estou perdendo. Eu sinto que todos eles deveriam funcionar.