1///|
2pub fn[V, E : Error] (f : () -> V raise E, finally_~ : () -> Unit) -> V raise E
try_finally(
3 () -> V raise E
f : () -> type parameter V
V raise type parameter E
E,
4 () -> Unit
finally_~ : () -> Unit
Unit
5) -> type parameter V
V raise type parameter E
E {
6 try {
7 let V
v = () -> V raise E
f()
8 () -> Unit
finally_()
9 V
v
10 } catch {
11 E
_ as e => {
12 () -> Unit
finally_()
13 raise E
e
14 }
15 }
16}
17