22 #ifndef Rcpp_Module_Class_Base_h
50 virtual SEXP
invoke( SEXP, SEXP, SEXP *,
int ){
72 throw std::range_error(
"cannot retrieve property" ) ;
75 throw std::range_error(
"cannot set property" ) ;
81 void add_enum(
const std::string& enum_name,
const std::map<std::string, int>& value ){
88 typedef std::map< std::string, int >
ENUM ;
89 typedef std::map< std::string, ENUM >
ENUM_MAP ;
std::map< std::string, int > ENUM
virtual SEXP newInstance(SEXP *, int)
ENUM_MAP::value_type ENUM_MAP_PAIR
virtual bool property_is_readonly(const std::string &)
std::map< std::string, ENUM > ENUM_MAP
virtual void setProperty(SEXP, SEXP, SEXP)
virtual SEXP invoke_void(SEXP, SEXP, SEXP *, int)
virtual std::string get_typeinfo_name()
virtual bool has_method(const std::string &)
virtual bool has_property(const std::string &)
virtual Rcpp::LogicalVector methods_voidness()
virtual Rcpp::CharacterVector complete()
class_Base(const char *name_, const char *doc)
virtual Rcpp::IntegerVector methods_arity()
virtual Rcpp::List getConstructors(const XP_Class &, std::string &)
virtual bool has_default_constructor()
virtual Rcpp::List property_classes()
virtual Rcpp::List fields(const XP_Class &)
virtual Rcpp::List getMethods(const XP_Class &, std::string &)
virtual Rcpp::CharacterVector property_names()
virtual SEXP invoke_notvoid(SEXP, SEXP, SEXP *, int)
std::vector< std::string > parents
void add_enum(const std::string &enum_name, const std::map< std::string, int > &value)
virtual Rcpp::CharacterVector method_names()
virtual SEXP getProperty(SEXP, SEXP)
bool has_typeinfo_name(const std::string &name_)
virtual void run_finalizer(SEXP)
virtual std::string property_class(const std::string &)
virtual SEXP invoke(SEXP, SEXP, SEXP *, int)
Rcpp::XPtr< class_Base > XP_Class
Vector< STRSXP > CharacterVector
Vector< LGLSXP > LogicalVector
Vector< INTSXP > IntegerVector