From 31743139b09c223f8aac47c7764b9512049d8daf Mon Sep 17 00:00:00 2001 From: Vitor Santos Costa Date: Sun, 7 Apr 2019 00:46:30 +0100 Subject: [PATCH] R-interface --- packages/real/yap4r/R/zzz.R | 5 +---- packages/real/yap4r/src/RcppExports.cpp | 4 ++-- packages/real/yap4r/src/yap4r.cpp | 15 +++++++-------- 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/packages/real/yap4r/R/zzz.R b/packages/real/yap4r/R/zzz.R index 2fdc83886..803a717a4 100644 --- a/packages/real/yap4r/R/zzz.R +++ b/packages/real/yap4r/R/zzz.R @@ -1,4 +1,3 @@ - ## Up until R 2.15.0, the require("methods") is needed but (now) ## triggers an warning from R CMD check #.onLoad <- function(libname, pkgname){ @@ -9,7 +8,5 @@ ## For R 2.15.1 and later this also works. Note that calling loadModule() triggers ## a load action, so this does not have to be placed in .onLoad() or evalqOnLoad(). -loadModule("mod_yap4r", TRUE) - - +loadModule("yap4r", TRUE) diff --git a/packages/real/yap4r/src/RcppExports.cpp b/packages/real/yap4r/src/RcppExports.cpp index 02ffefcff..7ca50efcd 100644 --- a/packages/real/yap4r/src/RcppExports.cpp +++ b/packages/real/yap4r/src/RcppExports.cpp @@ -6,10 +6,10 @@ using namespace Rcpp; -RcppExport SEXP _rcpp_module_boot_mod_yap4r(); +RcppExport SEXP _rcpp_module_boot_yap4r(); static const R_CallMethodDef CallEntries[] = { - {"_rcpp_module_boot_mod_yap4r", (DL_FUNC) &_rcpp_module_boot_mod_yap4r, 0}, + {"_rcpp_module_boot_yap4r", (DL_FUNC) &_rcpp_module_boot_yap4r, 0}, {NULL, NULL, 0} }; diff --git a/packages/real/yap4r/src/yap4r.cpp b/packages/real/yap4r/src/yap4r.cpp index 12526ae9e..b46092bde 100644 --- a/packages/real/yap4r/src/yap4r.cpp +++ b/packages/real/yap4r/src/yap4r.cpp @@ -76,15 +76,14 @@ bool yap4r::query(std::string p_name, GenericVector sexps, } bool yap4r::compile(std::string s) { - YAPTerm fs[1]; - fs[0] = YAPAtomTerm(s.c_str()); - return yap->mgoal(YAPApplTerm("compile", fs).term(), USER_MODULE); + YAPTerm t; + t = YAPAtomTerm(s.c_str()); + return yap->mgoal(YAPApplTerm("compile", t).term(), USER_MODULE); } bool yap4r::library(std::string s) { - YAPTerm fs[1], l[1]; - l[0] = YAPAtomTerm(s.c_str()); - fs[0] = YAPApplTerm("library", l); - return yap->mgoal(YAPApplTerm("compile", fs).term(), USER_MODULE); + YAPTerm t; + t = YAPApplTerm("library", YAPAtomTerm(s.c_str())); + return yap->mgoal(YAPApplTerm("compile", t).term(), USER_MODULE); } bool yap4r::more() { @@ -117,7 +116,7 @@ SEXP yap4r::peek(int i) { return term_to_sexp(Yap_InitSlot(Yap_XREGS[i]), false); } -RCPP_MODULE(mod_yap4r) { +RCPP_MODULE(yap4r) { class_("yap4r") .constructor("create an object encapsulating a Prolog engine") .method("query", &yap4r::query,