Hacker News new | ask | show | jobs
by panic 3332 days ago
You could use something like Go's 'defer' statement to ensure 'close' is called before the current function returns.
1 comments

Which already exists in Rust in the form of... wait for it... the Drop trait. It's the same thing.
The difference is that Go's `defer` is explicitly written out in the relevant scope, while Rust's `Drop` is implicit and defined elsewhere.
There's a "scopeguard" crate that uses Drop to make it explicit.