22#ifndef Rcpp_Function_h
23#define Rcpp_Function_h
47 const char*
fmt =
"Cannot convert object to a function: "
48 "[type=%s; target=CLOSXP, SPECIALSXP, or "
67 stop(
"env is not an environment");
69 get_function(name, env);
75 stop(
"there is no namespace called \"%s\"",
ns);
77 get_function(name, env);
80 SEXP operator()()
const {
85 #if defined(HAS_VARIADIC_TEMPLATES)
86 template <
typename... T>
87 SEXP operator()(
const T&...
args)
const {
91 #include <Rcpp/generated/Function__operator.h>
98 SEXP fun = Storage::get__() ;
109 return BODY( Storage::get__() ) ;
116 void get_function(
const std::string& name,
const SEXP env) {
#define RCPP_GENERATE_CTOR_ASSIGN(__CLASS__)
#define RCPP_API_CLASS(__CLASS__)
Function_Impl< PreserveStorage > Function
void NORET stop(const std::string &message)
SEXP Rcpp_fast_eval(SEXP expr, SEXP env)