R 関数内の引数に格納されているものを知りたい場合は...
、次のように単純にリストに変換できます。
foo <- function(...)
{
dots <- list(...)
print(dots)
}
foo(x = 1, 2, "three")
#$x
#[1] 1
#
#[[2]]
#[1] 2
#
#[[3]]
#[1] "three"
私が理解できない...
のは、呼び出し関数で評価する方法です。この次の例では、 の内容が引数をbaz
に返すようにします。...
bar
bar <- function(...)
{
baz()
}
baz <- function()
{
# What should dots be assigned as?
# I tried
# dots <- get("...", envir = parent.frame())
# and variations of
# dots <- eval(list(...), envir = parent.frame())
print(dots)
}
bar(x = 1, 2, "three")
get("...", envir = parent.frame())
<...>
これは有望に見えますが、そこから有用なものを抽出する方法がわかりません。
eval(list(...), envir = parent.frame())
...
が間違って使用されていると主張して、エラーをスローします。
...
からを取得するにはどうすればよいbar
ですか?