3

我已经成功地重新定义utils::View为一个通用函数,这样我就可以在我的包中使用它了。然而,碰巧 RStudio 也在这个函数上定义了某种钩子。

在加载我的包裹之前,我看到:

> View
function (...) 
.rs.callAs(name, hook, original, ...)
<environment: 0x000001f74d5ff0b0>

并寻找该.rs.callAs功能,我得到:

> findFunction('.rs.callAs')
[[1]]
<environment: 0x000001f74eb94598>
attr(,"name")
[1] "tools:rstudio"

加载我的包后,我看到:

> View
standardGeneric for "View" defined from package "summarytools"

function (...) 
standardGeneric("View")
<bytecode: 0x000001f752ecb7e0>
<environment: 0x000001f754a8e678>
Methods may be defined for arguments: ...
Use  showMethods("View")  for currently available ones.

由于tools:rstudio不是直接可见的,我不确定我能做些什么。如果我能以某种方式将它的定义包含在我的包中,我完全不确定我是否可以根据 R 会话是否在 RStudio 中运行而以不同的方式重新定义 View。

对此我显然不是很看好,但我想在放弃之前在这里问一下!

4

0 回答 0