The function on.exit() is often used to perform tasks when the
current function exits. This exit_call() function allows calling a
function when a parent function exits (thinking of it as inserting an
on.exit() call into the parent function).
Usage
exit_call(fun, n = 2, ...)
Arguments
fun
A function to be called when the parent function exits.
n
The parent frame number. For n = 1, exit_call(fun) is
the same as on.exit(fun()); n = 2 means adding
on.exit(fun()) in the parent function; n = 3 means the
grandparent, etc.
f = function(x) {
print(x)
xfun::exit_call(function() print("The parent function is exiting!"))
}
g = function(y) {
f(y)
print("f() has been called!")
}
g("An argument of g()!")