如何阻止Roxygen2自动向NAMESPACE添加import(RcppArmadillo)?附代码问询
Roxygen2自动添加
import(RcppArmadillo)的问题解决 怎么阻止自动往NAMESPACE加import(RcppArmadillo)
- 别用全局的
@import,改用@importFrom RcppArmadillo指定你实际需要用到的函数/对象,这样Roxygen2就不会生成全局导入的语句。 - 确保DESCRIPTION文件里只把
RcppArmadillo放在LinkingTo字段,别加到Imports里。 - 如果是内部用的函数(不需要生成文档),可以给函数加
@noRd注释,Roxygen2不会为它处理导入逻辑。
你贴的代码会不会触发这个行为
这段代码:
#include "RcppArmadillo.h" // [[Rcpp::depends(RcppArmadillo)]]
不会触发Roxygen2自动生成import(RcppArmadillo)。// [[Rcpp::depends(RcppArmadillo)]]只是告诉Rcpp编译时要依赖这个包,和Roxygen2生成NAMESPACE的导入语句没关系。只有当你在Roxygen注释里写了@import RcppArmadillo,或者在R代码里直接调用了RcppArmadillo的R端函数却没明确用@importFrom指定时,才会触发自动添加。
内容的提问来源于stack exchange,提问作者inferator
相关产品推荐
相关产品推荐

