在R中,我们可以makeActiveBinding通过提供一个函数来创建一个活动绑定:
e <- new.env()
makeActiveBinding("var",
function(x) if (missing(x)) cat("get\n") else cat("set\n"), e)
Run Code Online (Sandbox Code Playgroud)
一旦创建了活动绑定,似乎无法获得它背后的功能.
我想知道是否有可能获得活动绑定背后的功能,如下所示?
> getActiveBindingFunction("var", e)
function(x) if (missing(x)) cat("get\n") else cat("set\n"), e)
Run Code Online (Sandbox Code Playgroud)
从R 4.0.0开始,您可以直接使用activeBindingFunction(). 它没有真正记录下来,但足够简单!
e <- new.env()
makeActiveBinding("var",
function(x) if (missing(x)) cat("get\n") else cat("set\n"), e)
activeBindingFunction("var", e)
#> function(x) if (missing(x)) cat("get\n") else cat("set\n")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
115 次 |
| 最近记录: |