如何在R中找到函数的定义?

时间:2018-05-28 05:43:33

标签: r introspection

在rStudio中,我可以go to definition

但是在R控制台中如何找到包含代码的位置?

> show_somewhat_location_of_function(dplyr::src_dbi)

我看到我可以在REPL中查看源代码。但是我怎样才能获得功能的位置?

file: some_x.R
line: 42

1 个答案:

答案 0 :(得分:1)

我认为src_dbi是来自dbplyr而不是dplyr的函数。

要获得该函数的定义(或该函数的代码),只需使用括号键入函数,这样它们就不会被视为函数调用:

dbplyr::src_dbi

和R输出:

function (con, auto_disconnect = FALSE) 
{
    if (is_false(auto_disconnect)) {
        disco <- NULL
    }
    else {
        disco <- db_disconnector(con, quiet = is_true(auto_disconnect))
    }
    structure(list(con = con, disco = disco), class = c("src_dbi", 
        "src_sql", "src"))
}
<environment: namespace:dbplyr>

它告诉我命名空间和该函数的定义。