nargs {base} | R Documentation |
When used inside a function body, nargs
returns the number of
arguments supplied to that function, including positional
arguments left blank.
nargs()
The count includes empty (missing) arguments, so that foo(x,,z)
will be considered to have three arguments (see ‘Examples’).
This can occur in rather indirect ways, so for example x[]
might dispatch a call to `[.some_method`(x, )
which is
considered to have two arguments.
This is a primitive function.
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
tst <- function(a, b = 3, ...) {nargs()}
tst() # 0
tst(clicketyclack) # 1 (even non-existing)
tst(c1, a2, rr3) # 3
foo <- function(x, y, z, w) {
cat("call was ", deparse(match.call()), "\n", sep = "")
nargs()
}
foo() # 0
foo(, , 3) # 3
foo(z = 3) # 1, even though this is the same call
nargs() # not really meaningful