O que é desembrulhar no Rust e para que é usado?

Eu tenho esse código que usa.unwrap():

fn main() {
    let paths = std::fs::read_dir("/home/user").unwrap();

    for path in paths {
        println!("Name: {}", path.unwrap().path().display());

    }
}

Depois de olhar para odefinição deunwrap,

pub fn unwrap(self) -> T {
  match self {
        Ok(t) => t,
        Err(e) => unwrap_failed("called `Result::unwrap()` on an `Err` value", e),
    }
}

E aassinatura deread_dir

pub fn read_dir<P: AsRef<Path>>(path: P) -> io::Result<ReadDir>

Estou correto ao entender queunwrap retorna oT tipo que é passado emResult?

questionAnswers(1)

yourAnswerToTheQuestion