(I'm just starting off with rust, so please be patient)
Is there an idiomatic way of writing the following as a one-liner, somehow informing rustc that it should keep the PathBuf
around?
// nevermind the fully-qualified names
// they are there to clarify the code
// (that's what I hope at least)
let dir: std::path::PathBuf = std::env::current_dir().unwrap();
let dir: &std::path::Path = dir.as_path();
// this won't do:
// let dir = std::env::current_dir().unwrap().as_path();
I do understand why rust complains that "temporary value dropped while borrowed" (I mean, the message says it all), but, since I don't really need the PathBuf
for anything else, I was wondering if there's an idiomatic to tell rust that it should extend its life until the end of the code block.
Yeah, it occasionally bothers me, too, that I have to pull out an assignment, but in terms of the mental model, I do think, it's absolutely vital to always have ownership associated with a concrete variable slot.