Was ist das Auspacken in Rust und wofür wird es verwendet?
Ich habe diesen Code, der @ verwend.unwrap()
:
fn main() {
let paths = std::fs::read_dir("/home/user").unwrap();
for path in paths {
println!("Name: {}", path.unwrap().path().display());
}
}
Nach dem Betrachten der Definition vonunwrap
,
pub fn unwrap(self) -> T {
match self {
Ok(t) => t,
Err(e) => unwrap_failed("called `Result::unwrap()` on an `Err` value", e),
}
}
Und dieUnterschrift vonread_dir
pub fn read_dir<P: AsRef<Path>>(path: P) -> io::Result<ReadDir>
Bin ich richtig im Verständnis, dassunwrap
gibt das @ zurüT
Typ, der in @ übergeben wiResult
?