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.

Reply via email to