Don't provide a default value for c in the parameter list. Then you can use the missing() function to make decisions, including whether to generate a default value for c or not. -- Sent from my phone. Please excuse my brevity.
On March 24, 2016 5:11:43 AM PDT, sbihorel <sebastien.biho...@cognigencorp.com> wrote: >Hi, > >Please consider the following functions: > >myf1 <- function(x,fun){ > if (is.null(fun)){ > x > } else { > do.call(fun, list(x)) > } >} > >myf2 <- function(a=1, b=2, fun=NULL, c=myfun1(b,fun)){ > > if (myf1(b,fun)>0 & <c was not provided in function call>){ > c <- b > } > print(list(a,b,c)) >} > >myf2(a=2,b=3,fun=exp) >myf2(a=2,b=3,fun=exp,c=4) > >I need to replace "<c was not provided in function call>" by some code >that would make myf2 aware of it own calls and of the fact that the c >argument was provided or not in the function calls. > >Thanks for your help > >Sebastien > >______________________________________________ >R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >https://stat.ethz.ch/mailman/listinfo/r-help >PLEASE do read the posting guide >http://www.R-project.org/posting-guide.html >and provide commented, minimal, self-contained, reproducible code. [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.