25 size_t paramcount =
types.size() - 1;
26 for (
size_t i=0;i<paramcount;i++) {
27 LOG(
"Sending parameter %d at %p", (
int) i, args[i]);
32 catch (
const std::exception &e) {
33 LOG(
"Exception sending argument: %s", e.what());
38 LOG(
"Reading result from stream");
42 LOG(
"Got a SEXP, returning");
50 const std::vector<int32_t>
types;
63 RCPP_GENERATE_CTOR_ASSIGN(InternalFunctionForRInsideServer_Impl)
72 inline void set( SEXP xp){
73 Environment RCPP = Environment::Rcpp_namespace() ;
74 Function intf = RCPP[
"internal_function"] ;
75 Storage::set__( intf( xp ) ) ;
InternalFunctionForRInsideServer_Impl< PreserveStorage > InternalFunctionForRInsideServer
SEXP operator()(SEXP *args)
void write(const char *buffer, size_t len)
virtual ~CppFunctionForRInsideServer()
const std::vector< int32_t > types
void sexp_to_stream(SEXP, int32_t type, bool include_reply=false)
CppFunctionForRInsideServer(RInsideServer &server, uint32_t callback_id, const std::vector< int32_t > &types)
const char RIS_REPLY_CALLBACK
RCPP_API_CLASS(InternalFunctionForRInsideServer_Impl)
void sendReply(char reply)