[Rd] Test for argument in ...

Gregor Gorjanc gregor.gorjanc at gmail.com
Sun Jul 2 03:00:33 CEST 2006


Say I have a function foo1, which has argument ... to pass various
arguments to foo2 i.e.

foo1 <- function(x, ...)
  foo2(x, ...)

Say that foo2 accepts argument arg1 and I would like to do the following:
- if foo1 is called as foo1(x) then I would like to assign some value to
arg1 inside foo1 before calling foo2

arg1 <- "some value"
foo2(x, arg1=arg1)

- if foo1 is called foo1(arg1="some other value") do not assign some
value to arg1 and call foo2


However, I am not able to do this since I do not know how to test/check
if arg1 was given in foo1. Is it possible to test whether some argument
was passed in "..." i.e. something like

foo1 <- function(x, ...)
  if(testForArgumentInThreeDots(arg1)) arg1 <- "some value"
  foo2(x, arg1=arg1, ...)


Lep pozdrav / With regards,
    Gregor Gorjanc

University of Ljubljana     PhD student
Biotechnical Faculty
Zootechnical Department     URI: http://www.bfro.uni-lj.si/MR/ggorjan
Groblje 3                   mail: gregor.gorjanc <at> bfro.uni-lj.si

SI-1230 Domzale             tel: +386 (0)1 72 17 861
Slovenia, Europe            fax: +386 (0)1 72 17 888

"One must learn by doing the thing; for though you think you know it,
 you have no certainty until you try." Sophocles ~ 450 B.C.

More information about the R-devel mailing list