我想知道是否有任何自動化方式可以檢查給定包中的R函數是否依賴於C/C++編譯代碼來執行大部分執行,或者是否在純R中實現?當然,我可以看看源代碼,自己看看它是如何實現的,但我正在尋找會像檢查R函數是否依賴於C/C++編譯代碼的函數?
iscompiled(somepackage::fun)
TRUE
的情況下,功能
在包somepackage
fun()
使用引擎蓋下編譯的C/C++代碼而不是在純R中實現。我想可以檢查Rcpp
上的包的整體依賴性,但是這仍然不會說C/C++中該包中單個函數的依賴性。我當然知道,大多數基礎R函數已經使用編譯的C/C++代碼,這不是我的觀點......任何想法?檢查該函數的源代碼中是否出現.C
,.Call
或sourceCpp
?
不知道R,但是它是用C語言寫的(部分),或者最終從某個階段的標準庫或系統調用中調用C函數。由於所有操作系統都有C代碼,因此**每個** R程序都依賴於C代碼。那麼你的觀點是什麼? – Olaf