 <p>It seems like a very specialized/unusual use case. It violates LSP. And using exceptions at all is unidiomatic in scala - <code>scala.util.control.Exception</code> is mainly about catching exceptions that library functions might throw and translating them into more idiomatic expressions of potential failures.</p> <p>If you want to do this then write your own code for it - it should be pretty straightforward. I really don't think this is a common enough use case for there to be a standard library function for it.</p>