Can I specify what subset of errors a function can return?
one-liner to avoid "temporary value dropped while borrowed"?