>>706
context managerを知らないんだけど、pythonの用語で合っているかな?
スコープの入り口と出口に処理を差し込むようなものに見えたけど、こんな関数を用意するようなイメージ?

fn with_file(f: impl FnOnce(&mut File) -> io::Result<T>) -> io::Result<T> {
 let file = File::create(...)?;
 let res = f(&mut file)?;
 file.flush()?
 Ok(res)
}

確かにこれで解決するケースも多いね