最初に注意すべきことは、後に続くすべての名前付き引数 ( from
、to
、by
など) は、 へseq.default()
の呼び出しによってディスパッチされるメソッドseq()
であり、それ自体ではないということseq()
です。(seq()
それ自体は 1 つの形式のみを持ちます...
)。
そこから、これら 2 つのビルディング ブロックを使用できます。
## (1) Retrieves pairlist of all formals
formals(seq.default)
# [long pairlist object omitted to save space]
## (2) Matches supplied arguments to formals
match.call(definition = seq.default, call = quote(seq.default(1,10)))
# seq.default(from = 1, to = 10)
このようなことをする:
modifyList(formals(seq.default),
as.list(match.call(seq.default, quote(seq.default(1,10))))[-1])
# $from
# [1] 1
#
# $to
# [1] 10
#
# $by
# ((to - from)/(length.out - 1))
#
# $length.out
# NULL
#
# $along.with
# NULL
#
# $...