#include
using namespace Rcpp ;
// [[Rcpp::export]]
Language runit_language(SEXP x){ return Language(x) ; }
// [[Rcpp::export]]
Language runit_lang_variadic_1(){
return Language( "rnorm", 10, 0.0, 2.0 ) ;
}
// [[Rcpp::export]]
Language runit_lang_variadic_2(){
return Language( "rnorm", 10, Named("mean",0.0), 2.0 ) ;
}
// [[Rcpp::export]]
Language runit_lang_push_back(){
Language call("rnorm") ;
call.push_back( 10 ) ;
call.push_back( Named("mean", 0.0) ) ;
call.push_back( 2.0 ) ;
return call ;
}
// [[Rcpp::export]]
double runit_lang_square_rv(){
Language p("rnorm") ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
return p[2] ;
}
// [[Rcpp::export]]
Language runit_lang_square_lv(){
Language p("rnorm") ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
p[1] = "foobar" ;
p[2] = p[3] ;
return p ;
}
// [[Rcpp::export]]
SEXP runit_lang_fun( Function fun, IntegerVector x ){
Language call( fun );
call.push_back(x) ;
return Rf_eval( call, R_GlobalEnv ) ;
}
// [[Rcpp::export]]
SEXP runit_lang_inenv( Environment env){
Language call( "sum", Symbol("y") ) ;
return call.eval( env ) ;
}
// [[Rcpp::export]]
Pairlist runit_pairlist(SEXP x){
return Pairlist(x) ;
}
// [[Rcpp::export]]
Pairlist runit_pl_variadic_1(){
return Pairlist( "rnorm", 10, 0.0, 2.0 ) ;
}
// [[Rcpp::export]]
Pairlist runit_pl_variadic_2(){
return Pairlist( "rnorm", 10, Named("mean",0.0), 2.0 ) ;
}
// [[Rcpp::export]]
Pairlist runit_pl_push_front(){
Pairlist p ;
p.push_front( 1 ) ;
p.push_front( 10.0 ) ;
p.push_front( "foo" ) ;
p.push_front( Named( "foobar", 10) ) ;
return p ;
}
// [[Rcpp::export]]
Pairlist runit_pl_push_back(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( "foo" ) ;
p.push_back( Named( "foobar", 10) ) ;
return p ;
}
// [[Rcpp::export]]
Pairlist runit_pl_insert(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
/* insert in 2nd position */
p.insert( 1, Named( "bla", "bla" ) ) ;
/* insert in front */
p.insert( 0, 30.0 ) ;
/* insert in back */
p.insert( 5, "foobar" ) ;
return p ;
}
// [[Rcpp::export]]
Pairlist runit_pl_replace(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
p.replace( 0, Named( "first", 1 ) ) ;
p.replace( 1, 20.0 ) ;
p.replace( 2, false ) ;
return p ;
}
// [[Rcpp::export]]
int runit_pl_size(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
return p.size() ;
}
// [[Rcpp::export]]
Pairlist runit_pl_remove_1(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
p.remove( 0 ) ;
return p ;
}
// [[Rcpp::export]]
Pairlist runit_pl_remove_2(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
p.remove( 2 ) ;
return p ;
}
// [[Rcpp::export]]
Pairlist runit_pl_remove_3(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
p.remove( 1 ) ;
return p ;
}
// [[Rcpp::export]]
double runit_pl_square_1(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
return p[1] ;
}
// [[Rcpp::export]]
Pairlist runit_pl_square_2(){
Pairlist p ;
p.push_back( 1 ) ;
p.push_back( 10.0 ) ;
p.push_back( 20.0 ) ;
p[1] = "foobar" ;
p[2] = p[0] ;
return p ;
}
// [[Rcpp::export]]
Formula runit_formula_(){
Formula f( "x ~ y + z" ) ;
return f;
}
// [[Rcpp::export]]
Formula runit_formula_SEXP(SEXP form){
Formula f(form) ;
return f;
}