まあそらそうやろ、という感じですが。忘れそうなのでメモ。
library(rlang) usual_variables <- list(a = 1, b = 2) hedgehog_variables <- list(a = function(...) abort("Ouch!")) # fail e1 <- new_environment() env_bind_active(e1, !!!hedgehog_variables) env_bind(e1, !!!usual_variables) #> Error: Ouch! # OK e2 <- new_environment() env_bind(e2, !!!usual_variables) env_bind_active(e2, !!!hedgehog_variables) e2$b #> [1] 2 e2$a #> Error: Ouch!
Created on 2020-01-16 by the reprex package (v0.3.0)
active bindingがどう便利なのか知りたい方はこのへんを見てください。