同じパッケージ内の関数からパッケージ変数にアクセスするにはどうすればよいですか?
次のコードはx
、関数に対してローカルでのみ変更されます。myPackage::x
その機能からどのように変更できますか?
例:
x <- list()
populate_list <- function() {
x["a"] <- 4
}
--
でこれをテストするために使用している完全なコードを次に示しますget
。キーは、cache
パッケージが実行されるたびに異なるように選択されます。これはパッケージ コードです。R/get_obj.R
cache <- list()
test_cache <- function(){
cache <- get("cache")
cache[[paste(sample.int(10),collapse="-")]] <- 1
return(cache)
}
Rで次のようにテストします:
> library(devtools)
> load_all("mypackage")
Loading mypackage
> mypackage::test_cache()
$`4-1-6-5-9-3-10-2-7-8`
[1] 1
> mypackage::test_cache()
$`6-9-7-10-5-1-4-2-3-8`
[1] 1
> mypackage::cache
list()
のmypackage::cache
と の 2 回目の実行ではmypackage::test_cache()
、次のリストが出力として期待されていました。
$`4-1-6-5-9-3-10-2-7-8`
[1] 1
$`6-9-7-10-5-1-4-2-3-8`
[1] 1