super:赋予 R 调用“父”方法的能力,解决命名空间冲突问题

时间:2024-07-06 06:14:34
【文件属性】:

文件名称:super:赋予 R 调用“父”方法的能力,解决命名空间冲突问题

文件大小:14KB

文件格式:ZIP

更新时间:2024-07-06 06:14:34

R

修复 R 命名空间冲突 如果加载了两个包含命名空间冲突的包(即导出具有相同名称的函数),R 没有提供调用被覆盖函数的能力的好策略。 这个包旨在通过定义一个super方法来解决这个问题,该方法试图找到下一个合适的函数来调用。 您应该熟悉。 例如,请考虑以下场景。 # Exported in some attached package. source <- function ( file , ... ) { cat( " Sourcing file " , sQuote( file ), " \n " ) base :: source( file , ... ) } 通过显式调用base::source ,这个包有效地垄断了它对source函数的拦截:如果一个新加载的包采用相同的方法,第一个包的工作将被永久撤销。 想象一下,第二个包附加了以下覆盖。 source <- f


【文件预览】:
super-master
----NAMESPACE(109B)
----NEWS.md(59B)
----R()
--------super.R(5KB)
--------package.super.R(148B)
----.Rbuildignore(20B)
----.travis.yml(1021B)
----man()
--------multi_parent_env.Rd(328B)
--------super.Rd(1020B)
----README.md(3KB)
----tests()
--------test-all.R(57B)
--------testthat()
----DESCRIPTION(575B)

网友评论