22 #define COMPILING_RCPP
32 return cl->has_default_constructor();
35 return module->get_function(fun);
38 return cl->has_method(m);
41 return cl->has_property(m);
47 return module->has_function(met);
50 return module->has_class(cl);
53 return module->get_class(cl);
56 return R_ExternalPtrAddr(xp) == 0;
59 return cl->method_names();
62 return cl->property_names();
65 return cl->property_classes();
69 return cl->methods_arity();
72 return cl->methods_voidness();
77 return cl->property_is_readonly(p);
80 return cl->property_class(p);
84 return module-> functions_arity();
87 return module-> functions_names();
93 return module->classes_info();
96 return module->complete();
99 return cl->complete();
105 return cl->getProperty(field_xp, obj);
108 cl->setProperty(field_xp, obj, value);
112 cl->run_finalizer(obj);
122 return fun->operator()(cargs);
130 std::string fun = Rcpp::as<std::string>(CAR(p)); p = CDR(p);
133 return module->invoke(fun, cargs, nargs);
143 return clazz->newInstance(cargs, nargs);
149 #define CHECK_DUMMY_OBJ(p) if (p == rcpp_dummy_pointer) throw Rcpp::not_initialized()
155 if (args == R_NilValue) {
160 if (p != R_NilValue) {
173 SEXP met = CAR(p); p = CDR(p);
176 SEXP obj = CAR(p); p = CDR(p);
182 return clazz->invoke(met, obj, cargs, nargs);
192 SEXP met = CAR(p); p = CDR(p);
195 SEXP obj = CAR(p); p = CDR(p);
200 clazz->invoke_void(met, obj, cargs, nargs);
211 SEXP met = CAR(p); p = CDR(p);
214 SEXP obj = CAR(p); p = CDR(p);
220 return clazz->invoke_notvoid(met, obj, cargs, nargs);
#define UNPACK_EXTERNAL_ARGS(__CARGS__, __P__)
SEXP CppMethod__invoke_void(SEXP args)
SEXP CppMethod__invoke(SEXP args)
RCPP_FUN_3(SEXP, CppField__get, XP_Class cl, SEXP field_xp, SEXP obj)
SEXP InternalFunction_invoke(SEXP args)
Rcpp::XPtr< Rcpp::CppFunctionBase > XP_Function
Rcpp::XPtr< Rcpp::Module > XP_Module
RCPP_FUN_2(SEXP, Module__get_function, XP_Module module, std::string fun)
SEXP CppMethod__invoke_notvoid(SEXP args)
Rcpp::Module * getCurrentScope()
#define CHECK_DUMMY_OBJ(p)
SEXP class__dummyInstance(SEXP args)
RCPP_FUN_4(SEXP, CppField__set, XP_Class cl, SEXP field_xp, SEXP obj, SEXP value)
RCPP_FUN_1(bool, Class__has_default_constructor, XP_Class cl)
SEXP Module__invoke(SEXP args)
void setCurrentScope(Rcpp::Module *scope)
SEXP class__newInstance(SEXP args)
Rcpp::XPtr< Rcpp::class_Base > XP_Class
static Module * current_scope