1 2on_load <- function(expr, env = topenv(parent.frame())) { 3 callback <- function() eval_bare(expr, env) 4 env$.__rlang_hook__. <- c(env$.__rlang_hook__., list(callback)) 5} 6 7run_on_load <- function(env = topenv(caller_env())) { 8 hook <- env$.__rlang_hook__. 9 env_unbind(env, ".__rlang_hook__.") 10 11 for (callback in hook) { 12 callback() 13 } 14 15 env$.__rlang_hook__. <- NULL 16} 17