Hello all, I don't know if it is possible, but I would like to use do.call in C code in my package. The function do.call is defined as > do.call function (what, args, quote = FALSE, envir = parent.frame()) { if (!is.list(args)) stop("second argument must be a list") if (quote) { enquote <- function(x) as.call(list(as.name("quote"), x)) args <- lapply(args, enquote) } .Internal(do.call(what, args, envir)) } <environment: namespace:base> >
In <src>/main/names.c, the function do.call is linked to the C function do_docall (line 499). (.Internal calls the good function line 1194.) And the do_docall function is defined in <src>/main/coerce.c line 2217 and declared as SEXP attribute_hidden do_docall(SEXP call, SEXP op, SEXP args, SEXP rho) in Internal.h. The problem is that I do not guess the exact meaning of theses arguments, and the header file Internal.h is not found when included in my C file. As this header is not listed in R-exts.pdf section 6.17, I think I cannot use the do_docall function. Does anyone face this problem? or have an idea on how to solve it? Thanks in advance Christophe -- Christophe DUTANG Ph. D. student at ISFA, Lyon, France [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel