From 8f9b58959387d2d3afb901ba6e1fe828ede894d0 Mon Sep 17 00:00:00 2001 From: MeikeSteinhilber Date: Mon, 3 Jul 2023 15:31:11 +0200 Subject: [PATCH 1/6] small update website --- vignettes/use_case.Rmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vignettes/use_case.Rmd b/vignettes/use_case.Rmd index e5685fa2..1a0eec6e 100644 --- a/vignettes/use_case.Rmd +++ b/vignettes/use_case.Rmd @@ -34,7 +34,7 @@ library(sprtt) ## Overview -The `sprtt` package is the implementation of **s**equential **p**robability **r**atio **t**ests using the associated **t**-statistic (**sprtt**). This vignette describes an exemplary use case to improve the understanding of the package and the sequential t-test. +The `sprtt` package is a **s**equential **p**robability **r**atio **t**ests toolbox (**sprtt**). This vignette describes an exemplary use case to improve the understanding of the package and the sequential t-test. Other recommended vignettes cover: From 2ddded5865d66c485946e5971f373e3ce0abac49 Mon Sep 17 00:00:00 2001 From: MeikeSteinhilber Date: Wed, 5 Jul 2023 10:44:36 +0200 Subject: [PATCH 2/6] added ALs feedback --- DESCRIPTION | 7 +++---- R/draw_sample_mixture.R | 3 ++- inst/examples/draw_sample_mixture.R | 2 +- man/draw_sample_mixture.Rd | 5 +++-- man/sprtt-package.Rd | 2 +- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index e65b69ab..08da1bfb 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -22,10 +22,9 @@ Description: It is a toolbox for Sequential Probability Ratio Tests (SPRT), Wald (1945) . SPRTs are applied to the data during the sampling process, ideally after each observation. At any stage, the test will return a decision to either continue sampling or terminate and accept one of the specified hypotheses. - The seq_ttest() function performs sequential t tests developed by Rushton (1950) , Rushton (1952) and Hajnal (1961) , based on the SPRT. - Specifically, seq_ttest() performs one-sample, two-sample, and paired t tests for testing one- and two-sided hypotheses. - For more information on the SPRT t test, see Schnuerch & Erdfelder (2019) . - The seq_anova() function allows to perform a sequential one-way fixed effects ANOVA (see Steinhilber et al. (2023) <> ). + The seq_ttest() function performs one-sample, two-sample, and paired t-tests for testing one- and two-sided hypotheses (Schnuerch & Erdfelder (2019) ). + The seq_anova() function allows to perform a sequential one-way fixed effects ANOVA (Steinhilber et al. (2023) ). + Learn more about the package by using vignettes "browseVignettes(package = "sprtt")" or go to the website License: AGPL (>= 3) URL: https://meikesteinhilber.github.io/sprtt/ BugReports: https://github.com/MeikeSteinhilber/sprtt/issues diff --git a/R/draw_sample_mixture.R b/R/draw_sample_mixture.R index 93a74ef6..1ff28b6d 100644 --- a/R/draw_sample_mixture.R +++ b/R/draw_sample_mixture.R @@ -17,7 +17,8 @@ rnorm_mix <- function(n, mu1, sig1, mu2, sig2, gamma) { #' @param f Cohen's f. The simulated effect size. #' @param max_n sample size for the groups (total sample size = max_n*k_groups) #' @param counter_n number of times the function tries to find a possible parameter combination for the distribution. Default value is set to 100. -#' @param verbose `TRUE` or `FALSE.` Print out more information about the internal process of sampling the parameters. +#' @param verbose `TRUE` or `FALSE.` Print out more information about the internal process of sampling the parameters +#' (the internal counter that was reached, some additional hints and the drawn parameters for the Gaussian Mixture distributions.) #' #' @return returns a data.frame with the columns y (observations) and x (factor_A). #' diff --git a/inst/examples/draw_sample_mixture.R b/inst/examples/draw_sample_mixture.R index 10280476..25754036 100644 --- a/inst/examples/draw_sample_mixture.R +++ b/inst/examples/draw_sample_mixture.R @@ -10,7 +10,7 @@ data data <- sprtt::draw_sample_mixture( k_groups = 4, f = 1.2, # very large effect size - max_n = 2, + max_n = 4, counter_n = 1000, # increase of counter is necessary verbose = TRUE # prints more information to the console ) diff --git a/man/draw_sample_mixture.Rd b/man/draw_sample_mixture.Rd index fb802cbc..d8830861 100644 --- a/man/draw_sample_mixture.Rd +++ b/man/draw_sample_mixture.Rd @@ -15,7 +15,8 @@ draw_sample_mixture(k_groups, f, max_n, counter_n = 100, verbose = FALSE) \item{counter_n}{number of times the function tries to find a possible parameter combination for the distribution. Default value is set to 100.} -\item{verbose}{\code{TRUE} or \code{FALSE.} Print out more information about the internal process of sampling the parameters.} +\item{verbose}{\code{TRUE} or \code{FALSE.} Print out more information about the internal process of sampling the parameters +(the internal counter that was reached, some additional hints and the drawn parameters for the Gaussian Mixture distributions.)} } \value{ returns a data.frame with the columns y (observations) and x (factor_A). @@ -38,7 +39,7 @@ data data <- sprtt::draw_sample_mixture( k_groups = 4, f = 1.2, # very large effect size - max_n = 2, + max_n = 4, counter_n = 1000, # increase of counter is necessary verbose = TRUE # prints more information to the console ) diff --git a/man/sprtt-package.Rd b/man/sprtt-package.Rd index daa42640..6cebc9a0 100644 --- a/man/sprtt-package.Rd +++ b/man/sprtt-package.Rd @@ -8,7 +8,7 @@ \description{ \if{html}{\figure{logo.png}{options: style='float: right' alt='logo' width='120'}} -It is a toolbox for Sequential Probability Ratio Tests (SPRT), Wald (1945) \doi{10.2134/agronj1947.00021962003900070011x}. SPRTs are applied to the data during the sampling process, ideally after each observation. At any stage, the test will return a decision to either continue sampling or terminate and accept one of the specified hypotheses. The seq_ttest() function performs sequential t tests developed by Rushton (1950) \doi{10.2307/2332385}, Rushton (1952) \doi{10.2307/2334026} and Hajnal (1961) \doi{10.2307/2333131}, based on the SPRT. Specifically, seq_ttest() performs one-sample, two-sample, and paired t tests for testing one- and two-sided hypotheses. For more information on the SPRT t test, see Schnuerch & Erdfelder (2019) \doi{10.1037/met0000234}. The seq_anova() function allows to perform a sequential one-way fixed effects ANOVA (see Steinhilber et al. (2023) <> ). +It is a toolbox for Sequential Probability Ratio Tests (SPRT), Wald (1945) \doi{10.2134/agronj1947.00021962003900070011x}. SPRTs are applied to the data during the sampling process, ideally after each observation. At any stage, the test will return a decision to either continue sampling or terminate and accept one of the specified hypotheses. The seq_ttest() function performs one-sample, two-sample, and paired t-tests for testing one- and two-sided hypotheses (Schnuerch & Erdfelder (2019) \doi{10.1037/met0000234}). The seq_anova() function allows to perform a sequential one-way fixed effects ANOVA (Steinhilber et al. (2023) \doi{10.31234/osf.io/m64ne}). Learn more about the package by using vignettes "browseVignettes(package = "sprtt")" or go to the website \url{https://meikesteinhilber.github.io/sprtt/} } \seealso{ Useful links: From 1ecc1e926c9f1fd44607dbe735adf0861e159069 Mon Sep 17 00:00:00 2001 From: MeikeSteinhilber Date: Wed, 5 Jul 2023 15:56:30 +0200 Subject: [PATCH 3/6] added anov and plot to readme --- DESCRIPTION | 5 +- R/plot_sprt.R | 4 + README.Rmd | 11 +- README.md | 118 ++++++------------- inst/examples/sprtt_examples.R | 35 ++++++ man/figures/figure-gfm/unnamed-chunk-3-1.png | Bin 0 -> 11471 bytes man/sprtt-package.Rd | 2 +- tests/testthat/test-calc_plot_sprt.R | 3 + 8 files changed, 91 insertions(+), 87 deletions(-) create mode 100644 inst/examples/sprtt_examples.R create mode 100644 man/figures/figure-gfm/unnamed-chunk-3-1.png diff --git a/DESCRIPTION b/DESCRIPTION index 08da1bfb..76362d2a 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -18,13 +18,12 @@ Authors@R: comment = c(ORCID = "0000-0001-7248-0662")) ) Maintainer: Meike Steinhilber -Description: - It is a toolbox for Sequential Probability Ratio Tests (SPRT), Wald (1945) . +Description: It is a toolbox for Sequential Probability Ratio Tests (SPRT), Wald (1945) . SPRTs are applied to the data during the sampling process, ideally after each observation. At any stage, the test will return a decision to either continue sampling or terminate and accept one of the specified hypotheses. The seq_ttest() function performs one-sample, two-sample, and paired t-tests for testing one- and two-sided hypotheses (Schnuerch & Erdfelder (2019) ). The seq_anova() function allows to perform a sequential one-way fixed effects ANOVA (Steinhilber et al. (2023) ). - Learn more about the package by using vignettes "browseVignettes(package = "sprtt")" or go to the website + Learn more about the package by using vignettes "browseVignettes(package = "sprtt")" or go to the website . License: AGPL (>= 3) URL: https://meikesteinhilber.github.io/sprtt/ BugReports: https://github.com/MeikeSteinhilber/sprtt/issues diff --git a/R/plot_sprt.R b/R/plot_sprt.R index de3a7b86..1282a532 100644 --- a/R/plot_sprt.R +++ b/R/plot_sprt.R @@ -42,6 +42,10 @@ plot_anova <- function(anova_results, stop("anova_results argument must be of class seq_anova_results.") } + if (is.null(anova_results@plot)) { + stop("The anova_results@plot is NULL. Tip: The function argument `plot` must be set to TRUE in the seq_anova() function.") + } + A_boundary_log <- anova_results@plot$A_boundary_log B_boundary_log <- anova_results@plot$B_boundary_log diff --git a/README.Rmd b/README.Rmd index 45611daf..82e1916f 100644 --- a/README.Rmd +++ b/README.Rmd @@ -5,7 +5,7 @@ editor_options: mode: gfm --- - + ```{r setup, include=FALSE} knitr::opts_chunk$set( @@ -84,6 +84,13 @@ Short examples can be found in the following paragraph. > > `#> results of function()`: is console output -```{r, code=xfun::read_utf8('inst/examples/seq_ttest.R')} + +```{r, code=xfun::read_utf8('inst/examples/sprtt_examples.R')} ``` diff --git a/README.md b/README.md index 6203f55c..b8be2026 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ - + # sprtt @@ -79,6 +79,12 @@ Short examples can be found in the following paragraph. > > `#> results of function()`: is console output + + ``` r # set seed -------------------------------------------------------------------- set.seed(333) @@ -86,6 +92,7 @@ set.seed(333) # load library ---------------------------------------------------------------- library(sprtt) +# t-TEST ---------------------------------------------------------------------- # one sample: numeric input --------------------------------------------------- treatment_group <- rnorm(20, mean = 0, sd = 1) results <- seq_ttest(treatment_group, mu = 1, d = 0.8) @@ -99,93 +106,42 @@ results@likelihood_ratio results["likelihood_ratio"] #> [1] 965.0728 -# two sample: numeric input---------------------------------------------------- -treatment_group <- stats::rnorm(20, mean = 0, sd = 1) -control_group <- stats::rnorm(20, mean = 1, sd = 1) -seq_ttest(treatment_group, control_group, d = 0.8) -#> -#> ***** Sequential Two Sample t-test ***** -#> -#> formula: treatment_group and control_group -#> test statistic: -#> log-likelihood ratio = 5.347, decision = accept H1 -#> SPRT thresholds: -#> lower log(B) = -2.944, upper log(A) = 2.944 -#> Log-Likelihood of the: -#> alternative hypothesis = -4.211 -#> null hypothesis = -9.558 -#> alternative hypothesis: true difference in means is not equal to 0. -#> specified effect size: Cohen's d = 0.8 -#> degrees of freedom: df = 38 -#> sample estimates: -#> mean of x mean of y -#> -0.05204 1.18768 -#> *Note: to get access to the object of the results use the @ or [] instead of the $ operator. - -# two sample: formula input --------------------------------------------------- -stress_level <- stats::rnorm(20, mean = 0, sd = 1) -sex <- as.factor(c(rep(1, 10), rep(2, 10))) -seq_ttest(stress_level ~ sex, d = 0.8) -#> -#> ***** Sequential Two Sample t-test ***** -#> -#> formula: stress_level ~ sex -#> test statistic: -#> log-likelihood ratio = -1.455, decision = continue sampling -#> SPRT thresholds: -#> lower log(B) = -2.944, upper log(A) = 2.944 -#> Log-Likelihood of the: -#> alternative hypothesis = -1.233 -#> null hypothesis = 0.222 -#> alternative hypothesis: true difference in means is not equal to 0. -#> specified effect size: Cohen's d = 0.8 -#> degrees of freedom: df = 18 -#> sample estimates: -#> mean of x mean of y -#> -0.23286 -0.08217 -#> *Note: to get access to the object of the results use the @ or [] instead of the $ operator. - -# NA in the data -------------------------------------------------------------- -stress_level <- c(NA, stats::rnorm(20, mean = 0, sd = 2), NA) -sex <- as.factor(c(rep(1, 11), rep(2, 11))) -seq_ttest(stress_level ~ sex, d = 0.8, na.rm = TRUE) +# ANOVA ----------------------------------------------------------------------- +# simulate data --------------------------------------------------------------- +set.seed(333) +data <- sprtt::draw_sample_normal(k_groups = 3, + f = 0.25, + sd = c(1, 1, 1), + max_n = 25) + +# calculate sequential ANOVA -------------------------------------------------- +results <- sprtt::seq_anova(y ~ x, f = 0.25, data = data, plot = TRUE) +# test decision +results@decision +#> [1] "continue sampling" +# test results +results #> -#> ***** Sequential Two Sample t-test ***** +#> ***** Sequential ANOVA ***** #> -#> formula: stress_level ~ sex +#> formula: y ~ x #> test statistic: -#> log-likelihood ratio = -0.359, decision = continue sampling +#> log-likelihood ratio = 2.892, decision = continue sampling #> SPRT thresholds: #> lower log(B) = -2.944, upper log(A) = 2.944 #> Log-Likelihood of the: -#> alternative hypothesis = -1.923 -#> null hypothesis = -1.564 +#> alternative hypothesis = -2.715 +#> null hypothesis = -5.607 #> alternative hypothesis: true difference in means is not equal to 0. -#> specified effect size: Cohen's d = 0.8 -#> degrees of freedom: df = 18 -#> sample estimates: -#> mean of x mean of y -#> -0.40818 0.42068 +#> specified effect size: Cohen's f = 0.25 +#> empirical Cohen's f = 0.4045074, 95% CI[0.129478, 0.6171581] +#> Cohen's f adjusted = 0.355 +#> degrees of freedom: df1 = 2, df2 = 72 +#> SS effect = 10.74731, SS residual = 65.68208, SS total = 76.42939 #> *Note: to get access to the object of the results use the @ or [] instead of the $ operator. -# work with dataset (data are in the package included) ------------------------ -seq_ttest(monthly_income ~ sex, data = df_income, d = 0.8) -#> -#> ***** Sequential Two Sample t-test ***** -#> -#> formula: monthly_income ~ sex -#> test statistic: -#> log-likelihood ratio = -9.514, decision = accept H0 -#> SPRT thresholds: -#> lower log(B) = -2.944, upper log(A) = 2.944 -#> Log-Likelihood of the: -#> alternative hypothesis = -8.093 -#> null hypothesis = 1.421 -#> alternative hypothesis: true difference in means is not equal to 0. -#> specified effect size: Cohen's d = 0.8 -#> degrees of freedom: df = 118 -#> sample estimates: -#> mean of x mean of y -#> 3072.086 3080.715 -#> *Note: to get access to the object of the results use the @ or [] instead of the $ operator. +# plot results ----------------------------------------------------------------- +sprtt::plot_anova(results) ``` + + diff --git a/inst/examples/sprtt_examples.R b/inst/examples/sprtt_examples.R new file mode 100644 index 00000000..5eaea32b --- /dev/null +++ b/inst/examples/sprtt_examples.R @@ -0,0 +1,35 @@ +# set seed -------------------------------------------------------------------- +set.seed(333) + +# load library ---------------------------------------------------------------- +library(sprtt) + +# t-TEST ---------------------------------------------------------------------- +# one sample: numeric input --------------------------------------------------- +treatment_group <- rnorm(20, mean = 0, sd = 1) +results <- seq_ttest(treatment_group, mu = 1, d = 0.8) + +# get access to the slots ----------------------------------------------------- +# @ Operator +results@likelihood_ratio + +# [] Operator +results["likelihood_ratio"] + +# ANOVA ----------------------------------------------------------------------- +# simulate data --------------------------------------------------------------- +set.seed(333) +data <- sprtt::draw_sample_normal(k_groups = 3, + f = 0.25, + sd = c(1, 1, 1), + max_n = 25) + +# calculate sequential ANOVA -------------------------------------------------- +results <- sprtt::seq_anova(y ~ x, f = 0.25, data = data, plot = TRUE) +# test decision +results@decision +# test results +results + +# plot results ----------------------------------------------------------------- +sprtt::plot_anova(results) diff --git a/man/figures/figure-gfm/unnamed-chunk-3-1.png b/man/figures/figure-gfm/unnamed-chunk-3-1.png new file mode 100644 index 0000000000000000000000000000000000000000..bde0989aee989c65c9ac94a56011564205608f25 GIT binary patch literal 11471 zcmbVycUV(T^Y2LrAYEw+2#7%FC|!yW=^!OQ=mKArj(|b{=~0S;(mPUuv`_`42ns4n zFGf0qB1#8AniPTD6MTQ~z3=_wKF@s*b3$@0N4V6BOntFC@265j(|cuV2cAB>!qZm zz-F27F0h9J;7DpDUErH|(u<>`f+P5*ULhVNf;% z+5;qySnw+AjP0C@?Igx40P&6>Da3=~Nb>6A>p>#K6Norl0B0+M>srOFu9kV|m&Jne zI?LvW^^QQjqe6W=NRIU&1BnB?2=xSzi1oz!dLpqiR=+dWqq7VgWUh0L*hwUIh0AoU zuJ*y=#xKSV6vk&gqr>EDa=h>&1&}U@SXXMvsl-1{1)#ukT0EZ8FCJcC14J7mr z!{Nh5AQ=rC`3?Jllr`+vGMqIt3WtyC!ABGNN2@?uCB!Qb>KzI7@dQv6P<@g*;6()g z2t?wf9(>YMZ?dX?vVV0N4xcsx$!I#OWjbqSx&F5GH=!fJojD#=yg zD`;r{>gwvcAAH@}3-VAY%II~A2f<7g-_<>#{ z65@%3dXmaBS;UzZ;#?VVu9G+isslQ;1@tQsG>AAuB!W+f)e-p@!39WlU)$0f0O&uF zZb*kG&K>|R0Xph8P!F?yX2<1nwb^uxCfQzfH)N7Y5J*NzXv6r;3xwUpq%G7;lb@BC z$B(K0Nq(ss>U`HN&-F^44tprV%_Z=$Y;*;xcB>$jqQGk|@xIWnTRAG78QJ4goHqK7LVT0X!8FPXR)I@61AsZ&>c6?&$qoa~)SLq%UXJWT zhO;ivQsi}?abUi!4Y^A_Ke*x^O@lY*Uf$!TMz&*v_9s=6>FrkbRK&S*SN6CEBbhI; zn`(1u0<|{75MBIo=#BUeGVJ+s-Q(Qnq10_ zB1gN2bo?A1Vn^gE4-tp*B$YhapHc#-MUcf9()`f+3nO0O@c2sZ+RWbdjhB?)A;7Ra z`BnxBkrtSW3HkFH)=zC9{%;mlh|P-z@*N@S{sXo7+XFp@Tq}DU#DQlM;k%2<8VZ%U zClrbSyXO*vkISBHB@YI}9~lAN+0X+$IJV$X=o5adT^_bPm-&Guk$!P?+S8S>U!|Mr z!U!{-s3=qbAe%vzyI|b2*P0AIf3^;HHJ* zzop3SNHdP{*rLLj1O;mA^>;plA+eHKY8CZla&N+dFAu_mwT*^+(Tj zcW(F?JPLxJLk@hHkrpPi60M|94p{I!Jd{n!W+ncnnW&Ac|&Mg`?;C`I+s+h_? zT!X1oWiqm#s$emv^Y~59iusPbj~;T-l?oIRCko;3lo+92x)y=5)8Q%Q3*yh0nE&NX zi;U$xNY8;`lgfR8Lb`WiSpPPiG93z9p5?oRZga5KOHT3;dw0oGP+59_LYFH!zV=ZX zL=0iNz?0n(7ZelR`$VUBzCSPP5^cghRxsP~`}K@8i^aiGhQk%!?NqcGBXYv3)j0he z<(CUcui3CKkW(SjNg7Os2}id!WelrLFXcV9Pwt|c_xakpB=KA3HCw1Rf_tAro)Ymh zridHa+N<^6HmEOc>}u3j$Jk|iVWu-dd)Irms;X7UcUm?IHM6$L3$L&gaq>Zs=ku2- zldo>Y|B{h9`#Pm>alWu$^wHMCjWnvrD@tAIjyJPIy!O4^bur9%Z zA$@~E>GrQJ`K+J4C&s78>;J>%!3x2OYnm`Dxma~Y*(G^t<#qXuUjM+crQ3QS8H;8n zzJH>wd_bG}f%8-joE2HejHzL@Im(odsO!1X$&orAzPm9%*RvP8{Abxnp>JnvCeiUk z>dS&Te&j?dg6xzHw6ExrokV|4~& zb&Y%rf@S@8mmr834W=~NzB>lM6{@mnTrgh5z+b99fg!|#ztaebBiLS^g9M;AF2=a} z5;*&L0Hk658$kbY zD>f3vI6l=RbG8cgP%%)+As8y#2DA#nfEAY^A#CASMaAb7coxQ9uK7nPVDEFlurrU2 zxJYbjqWx==Gr-UwP9L${Ki(wDn0s`M9-%{{;_dd}jl$wsI~l0T2p|^n0^4_)Odd*@y95(jX`^tbrQeSK@wASrZnE;>H)j2gQXHYTW@0{0%Y z=<78~oxUI_@_dA3^wk1-z|;Vp&;E{(0tdDK(5cxU%s3DjD_83Y$bC|+aZyyFh z>)|;<3i<7l!FJ*FuNJ8aCXzAxFf2VaDdPVa7abVeW@d(9&E3ZX&L4;BSaU+e?kdOg z5uGsGKNMcgy_SEEHvP8Wbb&90x6_c;V)#<%Bi*1R|B$o(L2Jo+#YQJvrXibjbK3w~ zZ;>*gBQ5(u=d1e`tYtd6A(XVk+O;T~F&hnp?l+J!a(T#L_Eh zp=Zpo+UvB4DN=cCenxS{z5Fp71YgRE3i{r4*$fnE1s!URhy(Dm-@kv~NP?fpu}U>> zq;uo|Lj;@z{3p=#ThdRN7f9~*ADgzgY#uJHe!?Y88s^W2OfFLE~-=vYoKb}$;mW# zn-VU<^eV4|9<}JRxbELM{86_k>AU)L4XPmMH}8Wut{QpX1&w4wO1SgIjkH}%2~~}p zbL1BoQ~tn;X|f`ha)s4q;W&oUI(NQHu_Bhy$GwKV2}Jk2_sThqtlL;w&_t9(lwfz4 zE8^zxDjH~tujCXfh&y|eJM0H56xfv>fRw(e|Hp*Nc{vl$BX8A3HDcIcedo(Np78JE zdL$2t0%A?MEEL5INM)nDk1!nHzGx&RLOdP4C$EJ5BdCDPpa1d*7kSj)=(}e(n)KCI(?=DKmu;cn+ z)LrAC=^SkvLMI<%18$c6qv?T36~CiLAD#d0l+Sk?TRYli7hfCBx$6rmCoGX+`lwYy zhYioF>eZ0QBnlM9u{Q2hqN&k;s>!@Bv=J=HrHr8yS%x3dL+?rO`H9GXbQBATsPGWq zjH2q8$^+v?=Q;dJe-o=3iND-es$yL?&puG|;^Hy{_bTCH(()y(taJJkbX}ix4en1c z1pFTL+n9cm8#G3e3~^0NcqG)@({MiVNlF%muBT3UGlH+fUZO9D*;R(`iikV}GjjO( zys~jPRBLWP&xu9TVrgB95l!!$9~_Lbl9RI~|b!_)S;$4)&w z@>#|Jl6NXQ(`~ z5a@aM!5KYUZ@W>{tpi3`K4pHw7a={wIY4(bHe>}x=FLFdoGg^N^1^!ECWPU5@4I`m z2$!e0#4|Bv_RF*`$(w8+x@I18_|Pq>{wCu)*`b;%4uiXK|$9 zME=7&0GNNT$zDyTzj4{m>FuoKz=RUeSKc}Xb0IWR@aP%m$3nz@!(SDJ@o&p<=2M83 ztEPu92RgFD9`zL6guRopvb)1-Z7==&4vi3gOmOtlbNzc5E4?pCUyls( z3iQZ2b=Y!jIwZ`-$(lOS4J9oYg^|EYNzBt?GVB7&QrniaAh0{6`T4azLMS&nf^X*r zXUgvNPi@TI#lwUlcC3Oj1eXs8nqNTJ1zNw_Gni)sRtkcC(IZ4ME&|Q>?|N$au-Te` z8YoH6DSr)52Jm{ihy%riZqFBg{C@@vxXB4SF4gfnR%@uK%`)k0x2*{P74~;tWRwn= z6%`Om=9w@}+UePp*c81HjCfi7_%g{y5fmQN z16y!lSKQv63u9I>`5F$Om_vL;_dlOatW|+wB86}A0BR)($vxy+M!&e|Rry>eKMWD!!#ny;nQj!iqk}V&=umI{8 z1kBZdA>+K~P1Gfkh5$8!9AvQvw|JIrTz>otxFdhTNGxOIKT4vB#RsB3F%`R9xH&&h^B z>3fYb? zPo9mx-*}%%qQd#prIk&(jy|!Ur9-Ht6n>QkTveIgPSPSdb|B8U8tLe>NcW%VPm-Sw z=NZ{#0!RTcNHOB`0|y@stko-KsXe7fKA0<}DZz?KtX5V z{*5#Jn}%=Keuu%SUf@(3R5D_t0;*+Es8~zw0U5gd^~9(q3bFb6QUuv_5mLG0WL^}o z(Fq^!8+ep*2a572m%*g^Cm9c=Mm-dLQqa!i20mw{#*c^f6rp%m!)c4L_wKT9mb6D zS$vJi*6L0+IhbO?SEZp7Xw?h#WtGO#e;p7>p%E3AP1YWI|yn3`8jY8@0mz#j`{ML&;U5^l(O zt3IL8ap|I?{X}K=P8> zesS)KgRWI0yZ>t_F4(wp|>6anXCw*d^`H{0|#1CqfZ`c zf63~N_SegvAJ&RKGrv|R;r^U+w~{bbbOs;t{&B3Ec7fzt+F1^zZ8@2?0tM4=7G1U+ zgOOuK8}B&1YaquDLw>a;!6M_j`(C+e7dr>*_1a#NnQfja&@_x^sPzdwG18Dw%2aCA z{XLN`+ZyRGN)ZwOID~ilytu1fK=Ceamuu9pMz!U5yf>?Mj%C5Zi{4o#&|S|R5-|I- z*>>abEsIk-)cJDHS0`7X@M`DJlDpc)5z}*dwXH#iO#aROy2I^Bts8$DM9oQTBN#3b z)V6S@R5MD^qcn$|49lWqL(G4{g%FZ|1h8D-llc)mBN9;nOTKzw(eFTFF~e{*mhPC3 zUh%2y+pByN2yWltRx7e-MOhmy0MJ>6QC|-KDqMADd0yBnC~~>>j{4`jw7(#U1jj?QO*M6>oHaQH=Tk4Aqe{VnqbS>4Y{iLB|T%}qm{GEC$tbESEoV@%ohN7cu?JKYM3cA94r5*ozvODGe(;;amJ|Kyez1c@I1`Vu<6L0lgFbpBvRpoXzv zh=JIA|498kv2pE_Kp_pwcv;O#Sf)o6hX8g9a~*f^8ApLf=N<9d^%yE`n?7#mKCb)z zL6@iwF}Y7ndESYFsc}WXaN>a)zAB2cleb4NV;z7pCSB!erg8-YC7ORLPD+)y{knYq zlpOrLu+~=iklnt$$?xcU3paFFTxE5Qp;nmEE}5%Kzfy|gcbIbeG#w?Wx`u?) z6ON^m@Ke?*64-T zjJ=ae6JuMaQR0!R@M05&&F@y&6EZuWqq6h$eD0s^5F$k3%3-uexucnvs^Xs;gelR1@Wpl*>TJaYe#CO>ZR5Igh}_=5FvDk*3&MLMLiY-D zgOt*3)!Q8$XuT0-BoB#Ka3U0^JmjEQQ^cSMmoAa`@x0dROrE_GKi37fWBZ7zkKZx` zZhpeDBUn!RR~B;a633P!9RMrx2f-k~Ii{a; zOfpTpmpI8;Ny3bHfzsjop|Sx2WPg6f{_6o#aF7LLNxfO1YZ$Z}aGna|NYwwc&znha zIQC-UBB&h|X5{)|u!|gz0I#@Z-X*?Uxq9+G2^|_eS;NHa%_txfGWOMlH`&!c$NwizyU#4>^ml) z2w9ri-C*4Op3lObhKsJoczwvMJJ!7%@J#aj|;0H7-Jj|b z+;bs<^`XT|Em$9hv!g1^E1CTSxpO{+ajcPG4P>2dW6hXasPB2s9?uS|cO+l|DE(^u zTZBQDv#IMr5vU0}1etv;Ps@2%-aFfk1eTq_xN3w7?L7;evi8%Dx^-^g)Eo~kw1fDj z%aqK&a1984BIKViB1V0sFc7*SXFNOi^O$8NbkPHv%TxhHac<6vnF#n$|4**|;g zeNlkDl{7UeyWOTcg*Miwk&o(}JCW@ZAf_Ijx=kN3- zfG{P=5w3iIs|#r*vQuHKK;Q(5)r9_QhW~%M6a*kbf1Nb!1T?R1m}UK)sgYl)Q>Hf8 z&B>NB4!8#ChP_Yy+Ff%pzBv)Jq0fCGMtpK)bqXa7!bc#yFX-SO}G z7>bRCpUi3$q6t6Gq$!RUOEq&g$fc#Xv2xR$i-aN6JS=QqP+~Jk#;_aUZqSfCFP%ld z)h{R_GzdJ_b6~)=(Ozfk+vsHg1n01_5dN^jm*8TIe`W>SdFjQ@9E`N%-MO*qKrJ|L zQXLON1cTqZ=2}c;^{&3M$LJ>2-v_-w@K5*VX~h&UQv}h~iZmmp(AoBBdJUq9&Hqe3 z9c1ZWHSS;B3xWqQi6_OWhQNv&4AERyo@FN{E zm!_EyVQVclchZRn(>#p~!^RtB4WV*!r{6T!<&gdA4oMR33q$x=UB2e=HY`M;A-6gC z&yx5bzu>`E~8S`8%Cu!Ah?)Q1yiNDtaNMOT){|QlCx2~ zkL`^jDr@}V3SJZU&i^YQ6iV$92Gc$lZ)4LYWt3`qLW=$xn(bU6BO8gfBT_QD~P-SHppFRda8-LM)3Qo~CfnfM8ZCw%=ju-r~ zEzeDbT~5+)th7|}y(eLl&=B;G8XRDE2vT0W3qjY~^)}js+Eo0ye5F&>_iYCKqRL@a zXsHbZxA6H=3y*g=5BYPUWW%zCE?R0m~N@{_f%xli3LO=2yWw6<5!ix7qxs zPw$Zmw-Ry!>#@O^@?c>#aTPNlFr(P=BJUnQSJo8&4TjT`)EKg*(Bh5TUV(CIqmJ)bIBM(?s~}tXRR1CLeCafO*}-;Qbfg{@si- z0sL2~PnDn}TM85uocEKVeeJa1_=V#YU-|lXDq1({rSl%F#($4RKZD1j?|=MuEoH@f zHuL-pNwvM*aLH3Sg~@DNYekYv2)n`fuLINqXuxKD4hxpsp84G8tx+kwztQ2L)uH`j zUnzKe>M@~3IA~OoE3pYZge_Cqqh2zUdQ;Cym0-m8$^p(6nS(s$-tXC1W|iL$QjVde ziO6>qQN*WlPzCQ*Opz!{Ob|KJ5*X@nzDznZCPVMib*&nMXQgJ(xEHFeDif=aL-jXZ zpw^`^{NzqLUqf3;IJ&oA2dt2O3y?&$E7-Bs4JO6*Et3g=M=A0hYfo+OlhGHUOXgGS{6mkeAkyyN91t`}7Wt(${1@iy zY$pqzw{3EK_~v2DoWCcX4Y#F}N*S7x8Tz(*D3`+6+4QZrL6!=j&^wn~xMhKw1D>)l zpF#y|xw(&xj5!tpBW()1!$yOh1PslSJK6mON^${^+~2#mG^gZ7;w;l@9qmQ*n#sm> z-psaCZMu)<{P=6hwq4qK^Sf?hHaH|0wNe$a7uw!}dE{MxAhR#@4%g5G zn91~zA(gKM%y$Pp69QzUGm(hlXjY`;RRVf(X|1od9DE3-Iqh2j8vR@MLA#8F_9Q6; zx|_dxatRbA=o-U;tYEH2SDaCcmMGc;a|{~rIQO{(1YZfB_er$F5O0mcdD<>80Y7!m zMKa&j18PP7qeJZtAmS1eNz(u8_90t}XxJkqOzQ>rbW|P^tv_3&)_u`t%b&ZX@ZN@U z{z=F44Ot)P65H>2-^n43S!2QNBZHX_u?(?4`$x5@U;ZJOLeN1CB{Yc9g+TMk>rL2@ z?a?tc|3OMk>C_#z;`~vMHD$Q`)2ANiAyUD~vll!~&SSXNY&Q1=gMYcF4WmjOd_TE} zy6CxWFRM)HQeS>a@QEb)DYX-ZAlO$^oh|$aP0wT3QAb}7?h5py86I6!S8sS0p6H{{ z?)yRkkbeL5pdt=&WcsE@LLEg<;=a1-@O)F&2UzloYhWliX}W#XR@UZ*4@)DiZ^Yjo z+~r=9O!YduIVnEC)*qSpZnHj+9E~z?nU9Y#e%AexOy`EW_uJHM z|H=o`a6m!#AUWW;pnj<(u=nxPd0z*q2QS<2zW~6kHd5DkFR%L2okp7in^&|`9rs^c z)i&N7m!Z9LwtBMC!PI;D#JyE|(9LsociK`1JO|eHNGpxVHAe7e`oo*<=ewTQWG4Qs zx^%hGrh9$ig2!OH?TTL5x!>34`btVa$%un`c)k6sDA`Y_{V4bBmgvU0Zd+KM$Cq|K z`KQ-B()MGYKbS6}Ynk$BRC=%O&wu=t#xtonyIttC^_nL8qWg;dr!5uV7P7Q5i`PGT ze0Oq+^Gu)U|46#1&fKtywXlrclyzUr4Jz-uiHQ{-u*0nF7ka2Ag*~11P3c$#{ks44 zB6A%e_+Q-4rcR#YiF{qXBW{MU>cIK#xx}|?G%`JK*ND0Irq^t>6R(?5NKj+C72b+; z)m?|Zgck@=`#_}|QBN;m4D!tu8E>RfTpGeio9207;At!!AW$mvE~7SSlq)|scAYATpotATf>yq@nmsFpQ=S-H9<1YaUN_zS=JCUmX z_2kul-9czs=^u$mA`~w)l-P7QVaN3mN&Wu5)XlLZhL3~KzYDq4zHYj?<1CD#!Hq;h zb>F_WQ~-zhy18=&6}f&B%E!#FJNs7B`Q)4KiBLt;XA}88+VVR%@w`G&6eVsNUJ+pa zOp^;V-1t)cPm$y0W$xfV54Ik~RtvGbLc-;yB-lB1T*lQkuRU4ZO3lFP-dB9vfX#TU zu_`;kbAcUHXdBo$D4f4`lHr$!5`s*fikik6;|H{a>_Y>s8W(aU z5&mtO%3IGYt+V57Q%mPiG-BIn4U;mmL1_M4)QDn}PkXj)F5~Fp^q}M-n%@O##y{}=N)!d4-^4pzg-E-B z<_?yYD>aU_rCie zOKHRa7V{^r_h1N1UIs+5p@?x|@|HGn^5}}q2NN>qX&?LWxiG$|=yx^v%WAS8lT%*W zj9md7Vw8YvWtMHNah{Kl3`2|)RDz_i8EP(>I@n1ZegKLx`ZzN76jM~U9tXiMGnM!_ zZrNNw->;E>C94(m!%+%*aWP^*{n)s=*h6Pxt3(*}trq3q$Qu*L&)S17~WCL3Y9I zEuZ1q>-w1fg*2x>FXs9#Z&|%7MW(u!pdUkV4MLD^FDQQ5#A^G2`*#^sY}fCZ9*PB@ z{QWOqqK=peKNp7nDWMsLlr{*FWy*rH!|t>G!8G~NxVzt+j@Bz(rghOGS-0X0K~E{d zLvy3Cs;u>ZoaW#AxKiCbD@2{F10up5ngpT=7T=Ww=dOVN0qJtU`5y?r3W|M1j`&24 pp#U> Date: Thu, 6 Jul 2023 14:50:27 +0200 Subject: [PATCH 4/6] last push before cran submit --- .Rbuildignore | 2 + README.Rmd | 2 +- README.md | 2 +- cran-comments.md | 64 +- revdep/README.md | 32 + revdep/checks/libraries.csv | 10 + revdep/cran.md | 7 + revdep/data.sqlite | Bin 0 -> 24576 bytes revdep/failures.md | 1 + revdep/library/sprtt/new/Rcpp/CITATION | 50 + revdep/library/sprtt/new/Rcpp/DESCRIPTION | 31 + revdep/library/sprtt/new/Rcpp/INDEX | 38 + revdep/library/sprtt/new/Rcpp/MD5 | 655 + revdep/library/sprtt/new/Rcpp/NAMESPACE | 42 + revdep/library/sprtt/new/Rcpp/NEWS.Rd | 2934 ++ revdep/library/sprtt/new/Rcpp/R/Rcpp | 27 + revdep/library/sprtt/new/Rcpp/R/Rcpp.rdb | Bin 0 -> 296607 bytes revdep/library/sprtt/new/Rcpp/R/Rcpp.rdx | Bin 0 -> 3061 bytes .../new/Rcpp/announce/ANNOUNCE-0.10.0.txt | 188 + .../new/Rcpp/announce/ANNOUNCE-0.11.0.txt | 136 + .../new/Rcpp/announce/ANNOUNCE-0.6.0.txt | 54 + .../new/Rcpp/announce/ANNOUNCE-0.7.0.txt | 74 + .../new/Rcpp/announce/ANNOUNCE-0.8.0.txt | 297 + .../new/Rcpp/announce/ANNOUNCE-0.9.0.txt | 196 + revdep/library/sprtt/new/Rcpp/bib/Rcpp.bib | 959 + .../library/sprtt/new/Rcpp/discovery/cxx0x.R | 60 + .../new/Rcpp/examples/Attributes/Depends.cpp | 28 + .../new/Rcpp/examples/Attributes/Export.cpp | 40 + .../Rcpp/examples/Attributes/cppFunction.R | 43 + .../new/Rcpp/examples/Attributes/sourceCpp.R | 10 + .../examples/ConvolveBenchmarks/GNUmakefile | 29 + .../ConvolveBenchmarks/buildAndRun.sh | 25 + .../ConvolveBenchmarks/convolve10_cpp.cpp | 36 + .../ConvolveBenchmarks/convolve10_cpp.h | 27 + .../ConvolveBenchmarks/convolve11_cpp.cpp | 24 + .../ConvolveBenchmarks/convolve12_cpp.cpp | 24 + .../ConvolveBenchmarks/convolve13_cpp.cpp | 27 + .../ConvolveBenchmarks/convolve14_cpp.cpp | 25 + .../examples/ConvolveBenchmarks/convolve2_c.c | 28 + .../ConvolveBenchmarks/convolve3_cpp.cpp | 24 + .../ConvolveBenchmarks/convolve4_cpp.cpp | 29 + .../ConvolveBenchmarks/convolve5_cpp.cpp | 23 + .../examples/ConvolveBenchmarks/convolve7_c.c | 28 + .../ConvolveBenchmarks/convolve8_cpp.cpp | 43 + .../ConvolveBenchmarks/convolve9_cpp.cpp | 61 + .../ConvolveBenchmarks/exampleRCode.r | 107 + .../examples/ConvolveBenchmarks/loopmacro.h | 13 + .../examples/ConvolveBenchmarks/overhead.r | 24 + .../examples/ConvolveBenchmarks/overhead.sh | 16 + .../ConvolveBenchmarks/overhead_1.cpp | 21 + .../examples/ConvolveBenchmarks/overhead_2.c | 21 + .../new/Rcpp/examples/FastLM/benchmark.r | 54 + .../Rcpp/examples/FastLM/benchmarkLongley.r | 55 + .../Rcpp/examples/FastLM/fastLMviaArmadillo.r | 51 + .../new/Rcpp/examples/FastLM/fastLMviaGSL.r | 52 + .../new/Rcpp/examples/FastLM/lmArmadillo.R | 89 + .../sprtt/new/Rcpp/examples/FastLM/lmGSL.R | 118 + .../sprtt/new/Rcpp/examples/Misc/fibonacci.r | 46 + .../new/Rcpp/examples/Misc/ifelseLooped.r | 101 + .../sprtt/new/Rcpp/examples/Misc/newFib.r | 32 + .../new/Rcpp/examples/Misc/piBySimulation.r | 28 + .../sprtt/new/Rcpp/examples/Misc/piSugar.cpp | 12 + .../new/Rcpp/examples/OpenMP/GNUmakefile | 30 + .../Rcpp/examples/OpenMP/OpenMPandInline.r | 88 + .../sprtt/new/Rcpp/examples/OpenMP/check.R | 5 + .../Rcpp/examples/OpenMP/piWithInterrupts.cpp | 134 + .../new/Rcpp/examples/RcppGibbs/RcppGibbs.R | 291 + .../examples/RcppGibbs/RcppGibbs_Updated.R | 189 + .../new/Rcpp/examples/RcppGibbs/timeRNGs.R | 176 + .../new/Rcpp/examples/RcppInline/RObject.r | 271 + .../examples/RcppInline/RcppInlineExample.r | 47 + .../RcppInline/RcppInlineWithLibsExamples.r | 351 + .../examples/RcppInline/RcppSimpleExample.r | 27 + .../examples/RcppInline/UncaughtExceptions.r | 50 + .../examples/RcppInline/external_pointer.r | 113 + .../Rcpp/examples/SugarPerformance/Timer.h | 55 + .../examples/SugarPerformance/Timertest.cpp | 31 + .../SugarPerformance/sugarBenchmarks.R | 226 + .../new/Rcpp/examples/functionCallback/README | 22 + .../examples/functionCallback/newApiExample.r | 57 + .../Rcpp/examples/performance/extractors.R | 118 + .../Rcpp/examples/performance/performance.R | 38 + revdep/library/sprtt/new/Rcpp/help/AnIndex | 57 + revdep/library/sprtt/new/Rcpp/help/Rcpp.rdb | Bin 0 -> 91636 bytes revdep/library/sprtt/new/Rcpp/help/Rcpp.rdx | Bin 0 -> 978 bytes .../library/sprtt/new/Rcpp/help/aliases.rds | Bin 0 -> 671 bytes revdep/library/sprtt/new/Rcpp/help/paths.rds | Bin 0 -> 489 bytes .../library/sprtt/new/Rcpp/html/00Index.html | 131 + revdep/library/sprtt/new/Rcpp/html/R.css | 130 + revdep/library/sprtt/new/Rcpp/include/Rcpp.h | 93 + .../new/Rcpp/include/Rcpp/Benchmark/Timer.h | 150 + .../sprtt/new/Rcpp/include/Rcpp/DataFrame.h | 195 + .../sprtt/new/Rcpp/include/Rcpp/Dimension.h | 77 + .../sprtt/new/Rcpp/include/Rcpp/DottedPair.h | 49 + .../new/Rcpp/include/Rcpp/DottedPairImpl.h | 97 + .../sprtt/new/Rcpp/include/Rcpp/Environment.h | 407 + .../sprtt/new/Rcpp/include/Rcpp/Extractor.h | 36 + .../sprtt/new/Rcpp/include/Rcpp/Fast.h | 44 + .../sprtt/new/Rcpp/include/Rcpp/Formula.h | 81 + .../sprtt/new/Rcpp/include/Rcpp/Function.h | 128 + .../new/Rcpp/include/Rcpp/InputParameter.h | 101 + .../new/Rcpp/include/Rcpp/InternalFunction.h | 68 + .../Rcpp/InternalFunctionWithStdFunction.h | 70 + .../sprtt/new/Rcpp/include/Rcpp/Interrupt.h | 66 + .../sprtt/new/Rcpp/include/Rcpp/Language.h | 224 + .../library/sprtt/new/Rcpp/include/Rcpp/Light | 25 + .../sprtt/new/Rcpp/include/Rcpp/Lighter | 25 + .../sprtt/new/Rcpp/include/Rcpp/Lightest | 26 + .../sprtt/new/Rcpp/include/Rcpp/Module.h | 460 + .../sprtt/new/Rcpp/include/Rcpp/Na_Proxy.h | 62 + .../sprtt/new/Rcpp/include/Rcpp/Named.h | 68 + .../sprtt/new/Rcpp/include/Rcpp/Nullable.h | 148 + .../sprtt/new/Rcpp/include/Rcpp/Pairlist.h | 55 + .../sprtt/new/Rcpp/include/Rcpp/Promise.h | 82 + .../sprtt/new/Rcpp/include/Rcpp/RNGScope.h | 41 + .../sprtt/new/Rcpp/include/Rcpp/RObject.h | 62 + .../library/sprtt/new/Rcpp/include/Rcpp/Rcpp | 21 + .../sprtt/new/Rcpp/include/Rcpp/Reference.h | 75 + .../sprtt/new/Rcpp/include/Rcpp/Rmath.h | 242 + .../library/sprtt/new/Rcpp/include/Rcpp/S4.h | 81 + .../new/Rcpp/include/Rcpp/StretchyList.h | 85 + .../sprtt/new/Rcpp/include/Rcpp/String.h | 757 + .../new/Rcpp/include/Rcpp/StringTransformer.h | 56 + .../sprtt/new/Rcpp/include/Rcpp/Symbol.h | 88 + .../sprtt/new/Rcpp/include/Rcpp/Vector.h | 76 + .../new/Rcpp/include/Rcpp/WeakReference.h | 67 + .../sprtt/new/Rcpp/include/Rcpp/XPtr.h | 214 + .../sprtt/new/Rcpp/include/Rcpp/algo.h | 161 + .../sprtt/new/Rcpp/include/Rcpp/algorithm.h | 489 + .../new/Rcpp/include/Rcpp/api/bones/Date.h | 49 + .../Rcpp/include/Rcpp/api/bones/Datetime.h | 49 + .../new/Rcpp/include/Rcpp/api/bones/bones.h | 29 + .../include/Rcpp/api/bones/wrap_extra_steps.h | 34 + .../Rcpp/include/Rcpp/api/meat/DataFrame.h | 31 + .../new/Rcpp/include/Rcpp/api/meat/Date.h | 44 + .../new/Rcpp/include/Rcpp/api/meat/Datetime.h | 50 + .../Rcpp/include/Rcpp/api/meat/Dimension.h | 31 + .../include/Rcpp/api/meat/DottedPairImpl.h | 126 + .../Rcpp/include/Rcpp/api/meat/Environment.h | 59 + .../Rcpp/include/Rcpp/api/meat/Rcpp_eval.h | 117 + .../sprtt/new/Rcpp/include/Rcpp/api/meat/S4.h | 46 + .../Rcpp/include/Rcpp/api/meat/StretchyList.h | 74 + .../new/Rcpp/include/Rcpp/api/meat/Vector.h | 40 + .../sprtt/new/Rcpp/include/Rcpp/api/meat/as.h | 33 + .../new/Rcpp/include/Rcpp/api/meat/export.h | 72 + .../sprtt/new/Rcpp/include/Rcpp/api/meat/is.h | 172 + .../new/Rcpp/include/Rcpp/api/meat/meat.h | 51 + .../new/Rcpp/include/Rcpp/api/meat/message.h | 33 + .../include/Rcpp/api/meat/module/Module.h | 50 + .../Rcpp/include/Rcpp/api/meat/protection.h | 38 + .../new/Rcpp/include/Rcpp/api/meat/proxy.h | 205 + .../new/Rcpp/include/Rcpp/api/meat/wrap.h | 66 + .../library/sprtt/new/Rcpp/include/Rcpp/as.h | 168 + .../sprtt/new/Rcpp/include/Rcpp/barrier.h | 37 + .../sprtt/new/Rcpp/include/Rcpp/clone.h | 41 + .../sprtt/new/Rcpp/include/Rcpp/complex.h | 81 + .../sprtt/new/Rcpp/include/Rcpp/config.h | 36 + .../Rcpp/include/Rcpp/date_datetime/Date.h | 203 + .../include/Rcpp/date_datetime/Datetime.h | 173 + .../Rcpp/date_datetime/date_datetime.h | 51 + .../Rcpp/date_datetime/newDateVector.h | 75 + .../Rcpp/date_datetime/newDatetimeVector.h | 92 + .../Rcpp/date_datetime/oldDateVector.h | 42 + .../Rcpp/date_datetime/oldDatetimeVector.h | 43 + .../sprtt/new/Rcpp/include/Rcpp/exceptions.h | 401 + .../Rcpp/exceptions/cpp11/exceptions.h | 56 + .../Rcpp/exceptions/cpp98/exceptions.h | 177 + .../new/Rcpp/include/Rcpp/exceptions_impl.h | 110 + .../Rcpp/generated/DataFrame_generated.h | 147 + .../Rcpp/generated/DottedPair__ctors.h | 125 + .../Rcpp/generated/Function__operator.h | 135 + .../InternalFunctionWithStdFunction_call.h | 2570 ++ .../Rcpp/generated/InternalFunction__ctors.h | 487 + .../include/Rcpp/generated/Language__ctors.h | 241 + .../include/Rcpp/generated/Pairlist__ctors.h | 125 + .../include/Rcpp/generated/Vector__create.h | 1235 + .../include/Rcpp/generated/grow__pairlist.h | 135 + .../sprtt/new/Rcpp/include/Rcpp/grow.h | 77 + .../new/Rcpp/include/Rcpp/hash/IndexHash.h | 239 + .../new/Rcpp/include/Rcpp/hash/SelfHash.h | 129 + .../sprtt/new/Rcpp/include/Rcpp/hash/hash.h | 31 + .../new/Rcpp/include/Rcpp/internal/Exporter.h | 116 + .../Rcpp/include/Rcpp/internal/GreedyVector.h | 96 + .../Rcpp/internal/ListInitialization.h | 44 + .../Rcpp/include/Rcpp/internal/NAComparator.h | 119 + .../new/Rcpp/include/Rcpp/internal/NAEquals.h | 46 + .../include/Rcpp/internal/Proxy_Iterator.h | 125 + .../include/Rcpp/internal/SEXP_Iterator.h | 75 + .../new/Rcpp/include/Rcpp/internal/caster.h | 70 + .../Rcpp/include/Rcpp/internal/converter.h | 48 + .../new/Rcpp/include/Rcpp/internal/export.h | 165 + .../sprtt/new/Rcpp/include/Rcpp/internal/na.h | 35 + .../new/Rcpp/include/Rcpp/internal/r_coerce.h | 301 + .../new/Rcpp/include/Rcpp/internal/r_vector.h | 139 + .../new/Rcpp/include/Rcpp/internal/wrap.h | 946 + .../new/Rcpp/include/Rcpp/internal/wrap_end.h | 44 + .../Rcpp/include/Rcpp/iostream/Rstreambuf.h | 95 + .../library/sprtt/new/Rcpp/include/Rcpp/is.h | 59 + .../sprtt/new/Rcpp/include/Rcpp/lang.h | 297 + .../sprtt/new/Rcpp/include/Rcpp/longlong.h | 55 + .../new/Rcpp/include/Rcpp/macros/cat.hpp | 33 + .../new/Rcpp/include/Rcpp/macros/config.hpp | 70 + .../new/Rcpp/include/Rcpp/macros/debug.h | 109 + .../new/Rcpp/include/Rcpp/macros/dispatch.h | 108 + .../new/Rcpp/include/Rcpp/macros/interface.h | 56 + .../new/Rcpp/include/Rcpp/macros/macros.h | 137 + .../new/Rcpp/include/Rcpp/macros/module.h | 88 + .../new/Rcpp/include/Rcpp/macros/traits.h | 42 + .../new/Rcpp/include/Rcpp/macros/unroll.h | 89 + .../sprtt/new/Rcpp/include/Rcpp/macros/xp.h | 65 + .../Rcpp/include/Rcpp/module/CppFunction.h | 90 + .../new/Rcpp/include/Rcpp/module/Module.h | 242 + .../include/Rcpp/module/Module_Add_Property.h | 98 + .../Rcpp/include/Rcpp/module/Module_Field.h | 83 + .../include/Rcpp/module/Module_Property.h | 251 + .../module/Module_generated_Constructor.h | 148 + .../module/Module_generated_CppFunction.h | 14411 ++++++++ .../Rcpp/module/Module_generated_CppMethod.h | 13817 ++++++++ .../Rcpp/module/Module_generated_Factory.h | 179 + .../Module_generated_Pointer_CppMethod.h | 13948 ++++++++ .../module/Module_generated_Pointer_method.h | 1017 + .../Module_generated_class_constructor.h | 108 + .../module/Module_generated_class_factory.h | 108 + .../module/Module_generated_class_signature.h | 34 + .../module/Module_generated_ctor_signature.h | 108 + .../Rcpp/module/Module_generated_function.h | 1087 + .../module/Module_generated_get_signature.h | 3106 ++ .../Rcpp/module/Module_generated_method.h | 1941 ++ .../new/Rcpp/include/Rcpp/module/class.h | 539 + .../new/Rcpp/include/Rcpp/module/class_Base.h | 97 + .../include/Rcpp/module/get_return_type.h | 79 + .../new/Rcpp/include/Rcpp/platform/compiler.h | 196 + .../new/Rcpp/include/Rcpp/platform/solaris.h | 70 + .../sprtt/new/Rcpp/include/Rcpp/print.h | 38 + .../new/Rcpp/include/Rcpp/protection/Armor.h | 58 + .../Rcpp/include/Rcpp/protection/Shelter.h | 47 + .../new/Rcpp/include/Rcpp/protection/Shield.h | 54 + .../Rcpp/include/Rcpp/protection/protection.h | 25 + .../Rcpp/include/Rcpp/proxy/AttributeProxy.h | 105 + .../new/Rcpp/include/Rcpp/proxy/Binding.h | 109 + .../Rcpp/include/Rcpp/proxy/DottedPairProxy.h | 115 + .../new/Rcpp/include/Rcpp/proxy/FieldProxy.h | 87 + .../Rcpp/include/Rcpp/proxy/GenericProxy.h | 32 + .../new/Rcpp/include/Rcpp/proxy/NamesProxy.h | 95 + .../Rcpp/include/Rcpp/proxy/ProtectedProxy.h | 96 + .../Rcpp/include/Rcpp/proxy/RObjectMethods.h | 47 + .../new/Rcpp/include/Rcpp/proxy/SlotProxy.h | 103 + .../new/Rcpp/include/Rcpp/proxy/TagProxy.h | 85 + .../sprtt/new/Rcpp/include/Rcpp/proxy/proxy.h | 32 + .../sprtt/new/Rcpp/include/Rcpp/r/headers.h | 102 + .../sprtt/new/Rcpp/include/Rcpp/r_cast.h | 183 + .../sprtt/new/Rcpp/include/Rcpp/routines.h | 315 + .../sprtt/new/Rcpp/include/Rcpp/sprintf.h | 38 + .../sprtt/new/Rcpp/include/Rcpp/stats/beta.h | 27 + .../sprtt/new/Rcpp/include/Rcpp/stats/binom.h | 27 + .../new/Rcpp/include/Rcpp/stats/cauchy.h | 61 + .../sprtt/new/Rcpp/include/Rcpp/stats/chisq.h | 28 + .../new/Rcpp/include/Rcpp/stats/dpq/dpq.h | 408 + .../new/Rcpp/include/Rcpp/stats/dpq/macros.h | 127 + .../sprtt/new/Rcpp/include/Rcpp/stats/exp.h | 98 + .../sprtt/new/Rcpp/include/Rcpp/stats/f.h | 28 + .../sprtt/new/Rcpp/include/Rcpp/stats/gamma.h | 75 + .../sprtt/new/Rcpp/include/Rcpp/stats/geom.h | 28 + .../sprtt/new/Rcpp/include/Rcpp/stats/hyper.h | 28 + .../sprtt/new/Rcpp/include/Rcpp/stats/lnorm.h | 115 + .../sprtt/new/Rcpp/include/Rcpp/stats/logis.h | 135 + .../sprtt/new/Rcpp/include/Rcpp/stats/nbeta.h | 28 + .../new/Rcpp/include/Rcpp/stats/nbinom.h | 28 + .../new/Rcpp/include/Rcpp/stats/nbinom_mu.h | 28 + .../new/Rcpp/include/Rcpp/stats/nchisq.h | 28 + .../sprtt/new/Rcpp/include/Rcpp/stats/nf.h | 28 + .../sprtt/new/Rcpp/include/Rcpp/stats/norm.h | 115 + .../sprtt/new/Rcpp/include/Rcpp/stats/nt.h | 28 + .../sprtt/new/Rcpp/include/Rcpp/stats/pois.h | 27 + .../Rcpp/include/Rcpp/stats/random/random.h | 332 + .../Rcpp/include/Rcpp/stats/random/rbeta.h | 42 + .../Rcpp/include/Rcpp/stats/random/rbinom.h | 41 + .../Rcpp/include/Rcpp/stats/random/rcauchy.h | 70 + .../Rcpp/include/Rcpp/stats/random/rchisq.h | 44 + .../new/Rcpp/include/Rcpp/stats/random/rexp.h | 50 + .../new/Rcpp/include/Rcpp/stats/random/rf.h | 75 + .../Rcpp/include/Rcpp/stats/random/rgamma.h | 40 + .../Rcpp/include/Rcpp/stats/random/rgeom.h | 44 + .../Rcpp/include/Rcpp/stats/random/rhyper.h | 40 + .../Rcpp/include/Rcpp/stats/random/rlnorm.h | 73 + .../Rcpp/include/Rcpp/stats/random/rlogis.h | 76 + .../Rcpp/include/Rcpp/stats/random/rnbinom.h | 47 + .../include/Rcpp/stats/random/rnbinom_mu.h | 46 + .../Rcpp/include/Rcpp/stats/random/rnchisq.h | 54 + .../Rcpp/include/Rcpp/stats/random/rnorm.h | 83 + .../Rcpp/include/Rcpp/stats/random/rpois.h | 39 + .../include/Rcpp/stats/random/rsignrank.h | 40 + .../new/Rcpp/include/Rcpp/stats/random/rt.h | 51 + .../Rcpp/include/Rcpp/stats/random/runif.h | 60 + .../Rcpp/include/Rcpp/stats/random/rweibull.h | 59 + .../Rcpp/include/Rcpp/stats/random/rwilcox.h | 39 + .../sprtt/new/Rcpp/include/Rcpp/stats/stats.h | 58 + .../sprtt/new/Rcpp/include/Rcpp/stats/t.h | 27 + .../sprtt/new/Rcpp/include/Rcpp/stats/unif.h | 99 + .../new/Rcpp/include/Rcpp/stats/weibull.h | 86 + .../include/Rcpp/storage/NoProtectStorage.h | 54 + .../include/Rcpp/storage/PreserveStorage.h | 84 + .../new/Rcpp/include/Rcpp/storage/storage.h | 7 + .../sprtt/new/Rcpp/include/Rcpp/sugar/Range.h | 92 + .../include/Rcpp/sugar/block/SugarBlock_1.h | 62 + .../include/Rcpp/sugar/block/SugarBlock_2.h | 164 + .../include/Rcpp/sugar/block/SugarBlock_3.h | 126 + .../Rcpp/include/Rcpp/sugar/block/SugarMath.h | 124 + .../Rcpp/sugar/block/Vectorized_Math.h | 100 + .../new/Rcpp/include/Rcpp/sugar/block/block.h | 32 + .../Rcpp/include/Rcpp/sugar/functions/Lazy.h | 37 + .../Rcpp/include/Rcpp/sugar/functions/all.h | 90 + .../Rcpp/include/Rcpp/sugar/functions/any.h | 87 + .../Rcpp/include/Rcpp/sugar/functions/cbind.h | 830 + .../Rcpp/include/Rcpp/sugar/functions/clamp.h | 95 + .../include/Rcpp/sugar/functions/complex.h | 264 + .../include/Rcpp/sugar/functions/cummax.h | 71 + .../include/Rcpp/sugar/functions/cummin.h | 71 + .../include/Rcpp/sugar/functions/cumprod.h | 76 + .../include/Rcpp/sugar/functions/cumsum.h | 71 + .../Rcpp/include/Rcpp/sugar/functions/diff.h | 139 + .../include/Rcpp/sugar/functions/duplicated.h | 37 + .../include/Rcpp/sugar/functions/functions.h | 92 + .../Rcpp/include/Rcpp/sugar/functions/head.h | 62 + .../include/Rcpp/sugar/functions/ifelse.h | 430 + .../include/Rcpp/sugar/functions/is_finite.h | 55 + .../Rcpp/sugar/functions/is_infinite.h | 55 + .../Rcpp/include/Rcpp/sugar/functions/is_na.h | 113 + .../include/Rcpp/sugar/functions/is_nan.h | 55 + .../include/Rcpp/sugar/functions/lapply.h | 61 + .../include/Rcpp/sugar/functions/mapply.h | 28 + .../Rcpp/sugar/functions/mapply/mapply_2.h | 146 + .../Rcpp/sugar/functions/mapply/mapply_3.h | 87 + .../Rcpp/include/Rcpp/sugar/functions/match.h | 35 + .../Rcpp/include/Rcpp/sugar/functions/math.h | 72 + .../Rcpp/include/Rcpp/sugar/functions/max.h | 88 + .../Rcpp/include/Rcpp/sugar/functions/mean.h | 158 + .../include/Rcpp/sugar/functions/median.h | 290 + .../Rcpp/include/Rcpp/sugar/functions/min.h | 88 + .../include/Rcpp/sugar/functions/na_omit.h | 84 + .../Rcpp/include/Rcpp/sugar/functions/pmax.h | 193 + .../Rcpp/include/Rcpp/sugar/functions/pmin.h | 191 + .../Rcpp/include/Rcpp/sugar/functions/pow.h | 89 + .../Rcpp/include/Rcpp/sugar/functions/range.h | 92 + .../Rcpp/include/Rcpp/sugar/functions/rep.h | 91 + .../include/Rcpp/sugar/functions/rep_each.h | 57 + .../include/Rcpp/sugar/functions/rep_len.h | 57 + .../Rcpp/include/Rcpp/sugar/functions/rev.h | 56 + .../include/Rcpp/sugar/functions/rowSums.h | 961 + .../include/Rcpp/sugar/functions/sample.h | 476 + .../include/Rcpp/sugar/functions/sapply.h | 136 + .../Rcpp/include/Rcpp/sugar/functions/sd.h | 53 + .../include/Rcpp/sugar/functions/self_match.h | 77 + .../include/Rcpp/sugar/functions/seq_along.h | 59 + .../include/Rcpp/sugar/functions/setdiff.h | 185 + .../Rcpp/include/Rcpp/sugar/functions/sign.h | 82 + .../Rcpp/sugar/functions/strings/collapse.h | 46 + .../Rcpp/sugar/functions/strings/strings.h | 28 + .../Rcpp/sugar/functions/strings/trimws.h | 220 + .../Rcpp/include/Rcpp/sugar/functions/sum.h | 114 + .../Rcpp/include/Rcpp/sugar/functions/table.h | 133 + .../Rcpp/include/Rcpp/sugar/functions/tail.h | 65 + .../include/Rcpp/sugar/functions/unique.h | 85 + .../Rcpp/include/Rcpp/sugar/functions/var.h | 95 + .../include/Rcpp/sugar/functions/which_max.h | 96 + .../include/Rcpp/sugar/functions/which_min.h | 96 + .../Rcpp/sugar/logical/SingleLogicalResult.h | 106 + .../new/Rcpp/include/Rcpp/sugar/logical/and.h | 324 + .../include/Rcpp/sugar/logical/can_have_na.h | 32 + .../new/Rcpp/include/Rcpp/sugar/logical/is.h | 44 + .../Rcpp/include/Rcpp/sugar/logical/logical.h | 34 + .../new/Rcpp/include/Rcpp/sugar/logical/not.h | 67 + .../new/Rcpp/include/Rcpp/sugar/logical/or.h | 323 + .../include/Rcpp/sugar/matrix/as_vector.h | 61 + .../new/Rcpp/include/Rcpp/sugar/matrix/col.h | 61 + .../new/Rcpp/include/Rcpp/sugar/matrix/diag.h | 90 + .../include/Rcpp/sugar/matrix/lower_tri.h | 69 + .../Rcpp/sugar/matrix/matrix_functions.h | 33 + .../Rcpp/include/Rcpp/sugar/matrix/outer.h | 90 + .../new/Rcpp/include/Rcpp/sugar/matrix/row.h | 61 + .../Rcpp/include/Rcpp/sugar/matrix/tools.h | 44 + .../include/Rcpp/sugar/matrix/upper_tri.h | 69 + .../new/Rcpp/include/Rcpp/sugar/nona/nona.h | 88 + .../include/Rcpp/sugar/operators/Comparator.h | 117 + .../operators/Comparator_With_One_Value.h | 110 + .../include/Rcpp/sugar/operators/divides.h | 449 + .../logical_operators__Vector__Vector.h | 153 + .../logical_operators__Vector__primitive.h | 290 + .../Rcpp/include/Rcpp/sugar/operators/minus.h | 453 + .../Rcpp/include/Rcpp/sugar/operators/not.h | 108 + .../include/Rcpp/sugar/operators/operators.h | 40 + .../Rcpp/include/Rcpp/sugar/operators/plus.h | 505 + .../Rcpp/sugar/operators/r_binary_op.h | 50 + .../Rcpp/include/Rcpp/sugar/operators/times.h | 486 + .../Rcpp/sugar/operators/unary_minus.h | 120 + .../sprtt/new/Rcpp/include/Rcpp/sugar/sets.h | 61 + .../sprtt/new/Rcpp/include/Rcpp/sugar/sugar.h | 35 + .../Rcpp/include/Rcpp/sugar/sugar_forward.h | 33 + .../Rcpp/include/Rcpp/sugar/tools/iterator.h | 155 + .../new/Rcpp/include/Rcpp/sugar/undoRmath.h | 167 + .../new/Rcpp/include/Rcpp/traits/char_type.h | 44 + .../new/Rcpp/include/Rcpp/traits/enable_if.h | 18 + .../include/Rcpp/traits/expands_to_logical.h | 61 + .../new/Rcpp/include/Rcpp/traits/get_na.h | 59 + .../Rcpp/include/Rcpp/traits/has_iterator.h | 124 + .../new/Rcpp/include/Rcpp/traits/has_na.h | 65 + .../sprtt/new/Rcpp/include/Rcpp/traits/if_.h | 41 + .../new/Rcpp/include/Rcpp/traits/init_type.h | 41 + .../include/Rcpp/traits/integral_constant.h | 43 + .../Rcpp/include/Rcpp/traits/is_arithmetic.h | 105 + .../new/Rcpp/include/Rcpp/traits/is_bool.h | 24 + .../new/Rcpp/include/Rcpp/traits/is_const.h | 40 + .../Rcpp/include/Rcpp/traits/is_convertible.h | 48 + .../Rcpp/include/Rcpp/traits/is_eigen_base.h | 47 + .../new/Rcpp/include/Rcpp/traits/is_finite.h | 61 + .../Rcpp/include/Rcpp/traits/is_infinite.h | 47 + .../include/Rcpp/traits/is_module_object.h | 41 + .../new/Rcpp/include/Rcpp/traits/is_na.h | 64 + .../new/Rcpp/include/Rcpp/traits/is_nan.h | 47 + .../new/Rcpp/include/Rcpp/traits/is_pointer.h | 35 + .../Rcpp/include/Rcpp/traits/is_primitive.h | 37 + .../Rcpp/include/Rcpp/traits/is_reference.h | 38 + .../include/Rcpp/traits/is_sugar_expression.h | 49 + .../new/Rcpp/include/Rcpp/traits/is_trivial.h | 35 + .../Rcpp/include/Rcpp/traits/is_wide_string.h | 41 + .../new/Rcpp/include/Rcpp/traits/longlong.h | 44 + .../include/Rcpp/traits/matrix_interface.h | 53 + .../include/Rcpp/traits/module_wrap_traits.h | 39 + .../Rcpp/include/Rcpp/traits/named_object.h | 69 + .../new/Rcpp/include/Rcpp/traits/num2type.h | 34 + .../new/Rcpp/include/Rcpp/traits/one_type.h | 78 + .../include/Rcpp/traits/r_sexptype_traits.h | 79 + .../Rcpp/include/Rcpp/traits/r_type_traits.h | 183 + .../Rcpp/include/Rcpp/traits/remove_const.h | 39 + .../Rcpp/traits/remove_const_and_reference.h | 35 + .../include/Rcpp/traits/remove_reference.h | 39 + .../new/Rcpp/include/Rcpp/traits/result_of.h | 53 + .../new/Rcpp/include/Rcpp/traits/same_type.h | 35 + .../Rcpp/include/Rcpp/traits/storage_type.h | 82 + .../new/Rcpp/include/Rcpp/traits/traits.h | 82 + .../new/Rcpp/include/Rcpp/traits/un_pointer.h | 35 + .../include/Rcpp/traits/wrap_type_traits.h | 106 + .../new/Rcpp/include/Rcpp/unwindProtect.h | 87 + .../new/Rcpp/include/Rcpp/utils/tinyformat.h | 42 + .../Rcpp/utils/tinyformat/tinyformat.h | 1057 + .../include/Rcpp/vector/00_forward_Vector.h | 28 + .../include/Rcpp/vector/00_forward_proxy.h | 51 + .../Rcpp/include/Rcpp/vector/ChildVector.h | 77 + .../Rcpp/include/Rcpp/vector/DimNameProxy.h | 91 + .../new/Rcpp/include/Rcpp/vector/LazyVector.h | 70 + .../new/Rcpp/include/Rcpp/vector/ListOf.h | 140 + .../new/Rcpp/include/Rcpp/vector/Matrix.h | 451 + .../new/Rcpp/include/Rcpp/vector/MatrixBase.h | 197 + .../Rcpp/include/Rcpp/vector/MatrixColumn.h | 176 + .../new/Rcpp/include/Rcpp/vector/MatrixRow.h | 341 + .../Rcpp/include/Rcpp/vector/RangeIndexer.h | 104 + .../new/Rcpp/include/Rcpp/vector/SubMatrix.h | 107 + .../new/Rcpp/include/Rcpp/vector/Subsetter.h | 267 + .../new/Rcpp/include/Rcpp/vector/Vector.h | 1180 + .../new/Rcpp/include/Rcpp/vector/VectorBase.h | 173 + .../include/Rcpp/vector/const_generic_proxy.h | 66 + .../include/Rcpp/vector/const_string_proxy.h | 182 + .../new/Rcpp/include/Rcpp/vector/converter.h | 109 + .../Rcpp/include/Rcpp/vector/generic_proxy.h | 105 + .../Rcpp/include/Rcpp/vector/instantiation.h | 54 + .../new/Rcpp/include/Rcpp/vector/no_init.h | 87 + .../new/Rcpp/include/Rcpp/vector/proxy.h | 277 + .../Rcpp/include/Rcpp/vector/string_proxy.h | 266 + .../sprtt/new/Rcpp/include/Rcpp/vector/swap.h | 42 + .../new/Rcpp/include/Rcpp/vector/traits.h | 105 + .../include/Rcpp/vector/vector_from_string.h | 57 + .../sprtt/new/Rcpp/include/RcppCommon.h | 190 + .../sprtt/new/Rcpp/include/doxygen/Examples.h | 155 + .../library/sprtt/new/Rcpp/libs/x64/Rcpp.dll | Bin 0 -> 1312768 bytes .../sprtt/new/Rcpp/libs/x64/symbols.rds | Bin 0 -> 12091 bytes .../library/sprtt/new/Rcpp/prompt/module.Rd | 27 + .../library/sprtt/new/Rcpp/skeleton/Num.cpp | 51 + .../Rcpp/skeleton/Rcpp_modules_examples.Rd | 24 + .../new/Rcpp/skeleton/manual-page-stub.Rd | 34 + .../new/Rcpp/skeleton/rcpp_hello_world.R | 5 + .../new/Rcpp/skeleton/rcpp_hello_world.Rd | 17 + .../new/Rcpp/skeleton/rcpp_hello_world.cpp | 11 + .../new/Rcpp/skeleton/rcpp_hello_world.h | 19 + .../skeleton/rcpp_hello_world_attributes.cpp | 13 + .../sprtt/new/Rcpp/skeleton/rcpp_module.cpp | 85 + .../sprtt/new/Rcpp/skeleton/stdVector.cpp | 90 + revdep/library/sprtt/new/Rcpp/skeleton/zzz.R | 16 + .../r-cran-testrcpppackage_0.1.0-1_amd64.deb | Bin 0 -> 16266 bytes .../r-cran-testrcpppackage_0.1.0-1_i386.deb | Bin 0 -> 16142 bytes .../sprtt/new/Rcpp/tinytest/cpp/DataFrame.cpp | 208 + .../new/Rcpp/tinytest/cpp/Environment.cpp | 176 + .../Rcpp/tinytest/cpp/Exceptions_nocall.cpp | 13 + .../sprtt/new/Rcpp/tinytest/cpp/Function.cpp | 82 + .../Rcpp/tinytest/cpp/InternalFunction.cpp | 45 + .../tinytest/cpp/InternalFunctionCPP11.cpp | 45 + .../sprtt/new/Rcpp/tinytest/cpp/ListOf.cpp | 115 + .../sprtt/new/Rcpp/tinytest/cpp/Matrix.cpp | 455 + .../sprtt/new/Rcpp/tinytest/cpp/Module.cpp | 218 + .../sprtt/new/Rcpp/tinytest/cpp/RObject.cpp | 164 + .../sprtt/new/Rcpp/tinytest/cpp/Reference.cpp | 30 + .../sprtt/new/Rcpp/tinytest/cpp/S4.cpp | 93 + .../sprtt/new/Rcpp/tinytest/cpp/String.cpp | 151 + .../sprtt/new/Rcpp/tinytest/cpp/Subset.cpp | 111 + .../sprtt/new/Rcpp/tinytest/cpp/Vector.cpp | 888 + .../sprtt/new/Rcpp/tinytest/cpp/VectorOld.cpp | 38 + .../sprtt/new/Rcpp/tinytest/cpp/XPtr.cpp | 80 + .../sprtt/new/Rcpp/tinytest/cpp/algorithm.cpp | 97 + .../sprtt/new/Rcpp/tinytest/cpp/as.cpp | 60 + .../new/Rcpp/tinytest/cpp/attributes.cpp | 37 + .../new/Rcpp/tinytest/cpp/attributes.hpp | 9 + .../sprtt/new/Rcpp/tinytest/cpp/coerce.cpp | 28 + .../sprtt/new/Rcpp/tinytest/cpp/dates.cpp | 248 + .../sprtt/new/Rcpp/tinytest/cpp/dispatch.cpp | 47 + .../sprtt/new/Rcpp/tinytest/cpp/embeddedR.cpp | 33 + .../new/Rcpp/tinytest/cpp/embeddedR2.cpp | 33 + .../new/Rcpp/tinytest/cpp/exceptions.cpp | 69 + .../sprtt/new/Rcpp/tinytest/cpp/language.cpp | 274 + .../sprtt/new/Rcpp/tinytest/cpp/misc.cpp | 231 + .../sprtt/new/Rcpp/tinytest/cpp/modref.cpp | 55 + .../sprtt/new/Rcpp/tinytest/cpp/na.cpp | 44 + .../new/Rcpp/tinytest/cpp/rcppversion.cpp | 22 + .../sprtt/new/Rcpp/tinytest/cpp/rmath.cpp | 698 + .../sprtt/new/Rcpp/tinytest/cpp/stack.cpp | 108 + .../sprtt/new/Rcpp/tinytest/cpp/stats.cpp | 255 + .../sprtt/new/Rcpp/tinytest/cpp/sugar.cpp | 1254 + .../sprtt/new/Rcpp/tinytest/cpp/support.cpp | 94 + .../sprtt/new/Rcpp/tinytest/cpp/table.cpp | 37 + .../sprtt/new/Rcpp/tinytest/cpp/wrap.cpp | 306 + .../sprtt/new/Rcpp/tinytest/cpp/wstring.cpp | 43 + .../r-cran-testrcpppackage_0.1.0-1.diff.gz | Bin 0 -> 572 bytes .../src/r-cran-testrcpppackage_0.1.0-1.dsc | 19 + ...cran-testrcpppackage_0.1.0-1_amd64.changes | 32 + .../r-cran-testrcpppackage_0.1.0-1_amd64.deb | Bin 0 -> 16266 bytes ...-cran-testrcpppackage_0.1.0-1_i386.changes | 35 + .../r-cran-testrcpppackage_0.1.0-1_i386.deb | Bin 0 -> 16142 bytes .../testRcppAttributePackage/DESCRIPTION | 11 + .../testRcppAttributePackage/NAMESPACE | 3 + .../src/rcpp_test.cpp | 95 + .../Rcpp/tinytest/testRcppClass/DESCRIPTION | 17 + .../new/Rcpp/tinytest/testRcppClass/NAMESPACE | 7 + .../new/Rcpp/tinytest/testRcppClass/R/load.R | 53 + .../testRcppClass/R/rcpp_hello_world.R | 5 + .../testRcppClass/man/Rcpp_class_examples.Rd | 30 + .../testRcppClass/man/rcpp_hello_world.Rd | 17 + .../man/testRcppClass-package.Rd | 22 + .../Rcpp/tinytest/testRcppClass/src/Num.cpp | 32 + .../Rcpp/tinytest/testRcppClass/src/init.c | 27 + .../testRcppClass/src/rcpp_hello_world.cpp | 11 + .../testRcppClass/src/rcpp_hello_world.h | 8 + .../testRcppClass/src/rcpp_module.cpp | 53 + .../tinytest/testRcppClass/src/stdVector.cpp | 71 + .../tinytest/testRcppClass/tests/classes.R | 25 + .../testRcppInterfaceExporter/DESCRIPTION | 12 + .../testRcppInterfaceExporter/NAMESPACE | 7 + .../testRcppInterfaceExporter/R/RcppExports.R | 12 + .../testRcppInterfaceExporter/R/exporter.R | 18 + .../inst/include/testRcppInterfaceExporter.h | 9 + .../testRcppInterfaceExporter_RcppExports.h | 50 + .../src/RcppExports.cpp | 72 + .../src/exporter.cpp | 17 + .../testRcppInterfaceExporter/src/unwound.h | 27 + .../testRcppInterfaceUser/DESCRIPTION | 13 + .../tinytest/testRcppInterfaceUser/NAMESPACE | 7 + .../tinytest/testRcppInterfaceUser/R/user.R | 18 + .../testRcppInterfaceUser/src/config.h | 0 .../testRcppInterfaceUser/src/unwound.h | 27 + .../testRcppInterfaceUser/src/user.cpp | 16 + .../testRcppInterfaceUser/tests/tests.R | 51 + .../Rcpp/tinytest/testRcppModule/DESCRIPTION | 15 + .../Rcpp/tinytest/testRcppModule/NAMESPACE | 4 + .../testRcppModule/R/rcpp_hello_world.R | 5 + .../new/Rcpp/tinytest/testRcppModule/R/zzz.R | 11 + .../man/Rcpp_modules_examples.Rd | 24 + .../testRcppModule/man/rcpp_hello_world.Rd | 18 + .../man/testRcppModule-package.Rd | 22 + .../Rcpp/tinytest/testRcppModule/src/Num.cpp | 51 + .../Rcpp/tinytest/testRcppModule/src/init.c | 27 + .../testRcppModule/src/rcpp_hello_world.cpp | 11 + .../testRcppModule/src/rcpp_hello_world.h | 8 + .../testRcppModule/src/rcpp_module.cpp | 74 + .../tinytest/testRcppModule/src/stdVector.cpp | 90 + .../tinytest/testRcppModule/tests/modules.R | 20 + .../Rcpp/tinytest/testRcppPackage/DESCRIPTION | 12 + .../Rcpp/tinytest/testRcppPackage/NAMESPACE | 2 + .../testRcppPackage/R/rcpp_hello_world.R | 3 + .../man/testRcppPackage-package.Rd | 20 + .../testRcppPackage/src/rcpp_hello_world.cpp | 19 + .../testRcppPackage/src/rcpp_hello_world.h | 9 + .../sprtt/new/Rcpp/tinytest/test_algorithm.R | 126 + .../library/sprtt/new/Rcpp/tinytest/test_as.R | 81 + .../Rcpp/tinytest/test_attribute_package.R | 180 + .../sprtt/new/Rcpp/tinytest/test_attributes.R | 40 + .../new/Rcpp/tinytest/test_binary_package.R | 61 + .../new/Rcpp/tinytest/test_client_package.R | 50 + .../sprtt/new/Rcpp/tinytest/test_coerce.R | 23 + .../sprtt/new/Rcpp/tinytest/test_dataframe.R | 119 + .../sprtt/new/Rcpp/tinytest/test_date.R | 243 + .../sprtt/new/Rcpp/tinytest/test_dispatch.R | 75 + .../sprtt/new/Rcpp/tinytest/test_embedded_r.R | 39 + .../new/Rcpp/tinytest/test_environments.R | 271 + .../sprtt/new/Rcpp/tinytest/test_exceptions.R | 123 + .../Rcpp/tinytest/test_exceptions_nocall.R | 33 + .../new/Rcpp/tinytest/test_expose_class.R | 111 + .../sprtt/new/Rcpp/tinytest/test_function.R | 83 + .../new/Rcpp/tinytest/test_global_rostream.R | 108 + .../sprtt/new/Rcpp/tinytest/test_interface.R | 98 + .../Rcpp/tinytest/test_internal_function.R | 29 + .../tinytest/test_internal_function_cpp11.R | 31 + .../sprtt/new/Rcpp/tinytest/test_language.R | 141 + .../sprtt/new/Rcpp/tinytest/test_listof.R | 74 + .../sprtt/new/Rcpp/tinytest/test_matrix.R | 259 + .../sprtt/new/Rcpp/tinytest/test_misc.R | 193 + .../sprtt/new/Rcpp/tinytest/test_modref.R | 38 + .../sprtt/new/Rcpp/tinytest/test_module.R | 83 + .../tinytest/test_module_client_package.R | 62 + .../library/sprtt/new/Rcpp/tinytest/test_na.R | 30 + .../new/Rcpp/tinytest/test_packageversion.R | 50 + .../new/Rcpp/tinytest/test_quickanddirty.R | 49 + .../tinytest/test_rcpp_package_skeleton.R | 147 + .../sprtt/new/Rcpp/tinytest/test_reference.R | 29 + .../sprtt/new/Rcpp/tinytest/test_rmath.R | 625 + .../sprtt/new/Rcpp/tinytest/test_robject.R | 163 + .../library/sprtt/new/Rcpp/tinytest/test_s4.R | 91 + .../sprtt/new/Rcpp/tinytest/test_stack.R | 156 + .../sprtt/new/Rcpp/tinytest/test_stats.R | 275 + .../sprtt/new/Rcpp/tinytest/test_string.R | 99 + .../sprtt/new/Rcpp/tinytest/test_subset.R | 70 + .../sprtt/new/Rcpp/tinytest/test_sugar.R | 1577 + .../sprtt/new/Rcpp/tinytest/test_sugar_var.R | 36 + .../sprtt/new/Rcpp/tinytest/test_support.R | 37 + .../sprtt/new/Rcpp/tinytest/test_system.R | 36 + .../sprtt/new/Rcpp/tinytest/test_table.R | 39 + .../sprtt/new/Rcpp/tinytest/test_vector.R | 696 + .../sprtt/new/Rcpp/tinytest/test_vector_old.R | 29 + .../sprtt/new/Rcpp/tinytest/test_wrap.R | 134 + .../sprtt/new/Rcpp/tinytest/test_wstring.R | 39 + .../sprtt/new/Rcpp/tinytest/test_xptr.R | 68 + revdep/library/sprtt/new/StanHeaders/CITATION | 13 + .../library/sprtt/new/StanHeaders/DESCRIPTION | 80 + revdep/library/sprtt/new/StanHeaders/INDEX | 2 + revdep/library/sprtt/new/StanHeaders/LICENSE | 3 + revdep/library/sprtt/new/StanHeaders/MD5 | 2388 ++ .../library/sprtt/new/StanHeaders/NAMESPACE | 3 + .../sprtt/new/StanHeaders/R/StanHeaders | 27 + .../sprtt/new/StanHeaders/R/StanHeaders.rdb | Bin 0 -> 8199 bytes .../sprtt/new/StanHeaders/R/StanHeaders.rdx | Bin 0 -> 292 bytes .../sprtt/new/StanHeaders/help/AnIndex | 3 + .../new/StanHeaders/help/StanHeaders.rdb | Bin 0 -> 7036 bytes .../new/StanHeaders/help/StanHeaders.rdx | Bin 0 -> 195 bytes .../sprtt/new/StanHeaders/help/aliases.rds | Bin 0 -> 101 bytes .../sprtt/new/StanHeaders/help/paths.rds | Bin 0 -> 166 bytes .../sprtt/new/StanHeaders/html/00Index.html | 32 + .../library/sprtt/new/StanHeaders/html/R.css | 130 + .../new/StanHeaders/include/cvodes/cvodes.h | 613 + .../include/cvodes/cvodes_bandpre.h | 60 + .../include/cvodes/cvodes_bbdpre.h | 93 + .../StanHeaders/include/cvodes/cvodes_diag.h | 73 + .../include/cvodes/cvodes_direct.h | 69 + .../StanHeaders/include/cvodes/cvodes_ls.h | 267 + .../StanHeaders/include/cvodes/cvodes_spils.h | 107 + .../sprtt/new/StanHeaders/include/idas/idas.h | 614 + .../StanHeaders/include/idas/idas_bbdpre.h | 96 + .../StanHeaders/include/idas/idas_direct.h | 70 + .../new/StanHeaders/include/idas/idas_ls.h | 263 + .../new/StanHeaders/include/idas/idas_spils.h | 111 + .../new/StanHeaders/include/kinsol/kinsol.h | 152 + .../include/kinsol/kinsol_bbdpre.h | 66 + .../include/kinsol/kinsol_direct.h | 59 + .../StanHeaders/include/kinsol/kinsol_ls.h | 117 + .../StanHeaders/include/kinsol/kinsol_spils.h | 73 + .../include/nvector/nvector_cuda.h | 216 + .../StanHeaders/include/nvector/nvector_hip.h | 217 + .../include/nvector/nvector_manyvector.h | 168 + .../include/nvector/nvector_mpimanyvector.h | 185 + .../include/nvector/nvector_mpiplusx.h | 53 + .../include/nvector/nvector_openmp.h | 207 + .../include/nvector/nvector_openmpdev.h | 207 + .../include/nvector/nvector_parallel.h | 226 + .../include/nvector/nvector_parhyp.h | 204 + .../include/nvector/nvector_petsc.h | 199 + .../include/nvector/nvector_pthreads.h | 240 + .../include/nvector/nvector_raja.h | 192 + .../include/nvector/nvector_serial.h | 197 + .../include/nvector/nvector_trilinos.h | 141 + .../SundialsTpetraVectorInterface.hpp | 63 + .../trilinos/SundialsTpetraVectorKernels.hpp | 675 + .../src/stan/analyze/mcmc/autocovariance.hpp | 135 + .../mcmc/compute_effective_sample_size.hpp | 231 + .../compute_potential_scale_reduction.hpp | 183 + .../src/stan/analyze/mcmc/split_chains.hpp | 69 + .../include/src/stan/callbacks/interrupt.hpp | 32 + .../include/src/stan/callbacks/logger.hpp | 101 + .../src/stan/callbacks/stream_logger.hpp | 73 + .../src/stan/callbacks/stream_writer.hpp | 107 + .../include/src/stan/callbacks/tee_writer.hpp | 65 + .../include/src/stan/callbacks/writer.hpp | 52 + .../include/src/stan/command/stanc_helper.hpp | 362 + .../include/src/stan/io/array_var_context.hpp | 399 + .../src/stan/io/chained_var_context.hpp | 84 + .../include/src/stan/io/cmd_line.hpp | 282 + .../StanHeaders/include/src/stan/io/dump.hpp | 801 + .../include/src/stan/io/empty_var_context.hpp | 119 + .../include/src/stan/io/ends_with.hpp | 23 + .../include/src/stan/io/is_whitespace.hpp | 22 + .../include/src/stan/io/program_reader.hpp | 316 + .../src/stan/io/random_var_context.hpp | 268 + .../include/src/stan/io/read_line.hpp | 36 + .../include/src/stan/io/reader.hpp | 1747 + .../include/src/stan/io/stan_csv_reader.hpp | 376 + .../include/src/stan/io/starts_with.hpp | 23 + .../include/src/stan/io/trim_spaces.hpp | 29 + .../StanHeaders/include/src/stan/io/util.hpp | 37 + .../include/src/stan/io/validate_dims.hpp | 76 + .../include/src/stan/io/validate_zero_buf.hpp | 32 + .../include/src/stan/io/var_context.hpp | 304 + .../include/src/stan/io/writer.hpp | 511 + .../StanHeaders/include/src/stan/lang/ast.hpp | 153 + .../lang/ast/fun/bare_type_is_data_vis.hpp | 91 + .../ast/fun/bare_type_is_data_vis_def.hpp | 43 + .../lang/ast/fun/bare_type_order_id_vis.hpp | 33 + .../ast/fun/bare_type_order_id_vis_def.hpp | 40 + .../ast/fun/bare_type_set_is_data_vis.hpp | 83 + .../ast/fun/bare_type_set_is_data_vis_def.hpp | 44 + .../lang/ast/fun/bare_type_total_dims_vis.hpp | 84 + .../ast/fun/bare_type_total_dims_vis_def.hpp | 39 + .../src/stan/lang/ast/fun/bare_type_vis.hpp | 209 + .../stan/lang/ast/fun/bare_type_vis_def.hpp | 100 + .../lang/ast/fun/block_type_bounds_vis.hpp | 156 + .../ast/fun/block_type_bounds_vis_def.hpp | 74 + .../ast/fun/block_type_is_specialized_vis.hpp | 157 + .../fun/block_type_is_specialized_vis_def.hpp | 84 + .../fun/block_type_offset_multiplier_vis.hpp | 157 + .../block_type_offset_multiplier_vis_def.hpp | 86 + .../ast/fun/block_type_params_total_vis.hpp | 157 + .../fun/block_type_params_total_vis_def.hpp | 110 + .../src/stan/lang/ast/fun/ends_with.hpp | 21 + .../src/stan/lang/ast/fun/ends_with_def.hpp | 16 + .../lang/ast/fun/expression_bare_type_vis.hpp | 171 + .../ast/fun/expression_bare_type_vis_def.hpp | 99 + .../src/stan/lang/ast/fun/fun_name_exists.hpp | 20 + .../stan/lang/ast/fun/fun_name_exists_def.hpp | 16 + .../stan/lang/ast/fun/generate_expression.hpp | 27 + .../src/stan/lang/ast/fun/get_ccdf.hpp | 19 + .../src/stan/lang/ast/fun/get_ccdf_def.hpp | 21 + .../include/src/stan/lang/ast/fun/get_cdf.hpp | 19 + .../src/stan/lang/ast/fun/get_cdf_def.hpp | 21 + .../src/stan/lang/ast/fun/get_prob_fun.hpp | 20 + .../stan/lang/ast/fun/get_prob_fun_def.hpp | 23 + .../src/stan/lang/ast/fun/has_ccdf_suffix.hpp | 20 + .../stan/lang/ast/fun/has_ccdf_suffix_def.hpp | 16 + .../src/stan/lang/ast/fun/has_cdf_suffix.hpp | 19 + .../stan/lang/ast/fun/has_cdf_suffix_def.hpp | 16 + .../src/stan/lang/ast/fun/has_lp_suffix.hpp | 19 + .../stan/lang/ast/fun/has_lp_suffix_def.hpp | 17 + .../stan/lang/ast/fun/has_non_param_var.hpp | 31 + .../lang/ast/fun/has_non_param_var_def.hpp | 17 + .../lang/ast/fun/has_non_param_var_vis.hpp | 203 + .../ast/fun/has_non_param_var_vis_def.hpp | 148 + .../stan/lang/ast/fun/has_prob_fun_suffix.hpp | 21 + .../lang/ast/fun/has_prob_fun_suffix_def.hpp | 17 + .../src/stan/lang/ast/fun/has_rng_suffix.hpp | 19 + .../stan/lang/ast/fun/has_rng_suffix_def.hpp | 18 + .../include/src/stan/lang/ast/fun/has_var.hpp | 29 + .../src/stan/lang/ast/fun/has_var_def.hpp | 17 + .../src/stan/lang/ast/fun/has_var_vis.hpp | 219 + .../src/stan/lang/ast/fun/has_var_vis_def.hpp | 114 + .../src/stan/lang/ast/fun/indexed_type.hpp | 26 + .../stan/lang/ast/fun/indexed_type_def.hpp | 88 + .../stan/lang/ast/fun/infer_type_indexing.hpp | 20 + .../lang/ast/fun/infer_type_indexing_def.hpp | 39 + .../src/stan/lang/ast/fun/is_assignable.hpp | 32 + .../stan/lang/ast/fun/is_assignable_def.hpp | 33 + .../src/stan/lang/ast/fun/is_multi_index.hpp | 20 + .../stan/lang/ast/fun/is_multi_index_def.hpp | 17 + .../stan/lang/ast/fun/is_multi_index_vis.hpp | 69 + .../lang/ast/fun/is_multi_index_vis_def.hpp | 25 + .../include/src/stan/lang/ast/fun/is_nil.hpp | 19 + .../src/stan/lang/ast/fun/is_nil_def.hpp | 17 + .../src/stan/lang/ast/fun/is_nil_vis.hpp | 57 + .../src/stan/lang/ast/fun/is_nil_vis_def.hpp | 65 + .../lang/ast/fun/is_no_op_statement_vis.hpp | 161 + .../ast/fun/is_no_op_statement_vis_def.hpp | 73 + .../src/stan/lang/ast/fun/is_nonempty.hpp | 20 + .../src/stan/lang/ast/fun/is_nonempty_def.hpp | 19 + .../src/stan/lang/ast/fun/is_space.hpp | 21 + .../src/stan/lang/ast/fun/is_space_def.hpp | 14 + .../src/stan/lang/ast/fun/is_user_defined.hpp | 34 + .../stan/lang/ast/fun/is_user_defined_def.hpp | 32 + .../ast/fun/is_user_defined_prob_function.hpp | 26 + .../fun/is_user_defined_prob_function_def.hpp | 23 + .../stan/lang/ast/fun/num_index_op_dims.hpp | 23 + .../lang/ast/fun/num_index_op_dims_def.hpp | 19 + .../src/stan/lang/ast/fun/print_scope.hpp | 21 + .../src/stan/lang/ast/fun/print_scope_def.hpp | 42 + .../stan/lang/ast/fun/promote_primitive.hpp | 39 + .../lang/ast/fun/promote_primitive_def.hpp | 24 + .../src/stan/lang/ast/fun/returns_type.hpp | 28 + .../stan/lang/ast/fun/returns_type_def.hpp | 21 + .../stan/lang/ast/fun/returns_type_vis.hpp | 218 + .../lang/ast/fun/returns_type_vis_def.hpp | 120 + .../stan/lang/ast/fun/strip_ccdf_suffix.hpp | 20 + .../lang/ast/fun/strip_ccdf_suffix_def.hpp | 21 + .../stan/lang/ast/fun/strip_cdf_suffix.hpp | 20 + .../lang/ast/fun/strip_cdf_suffix_def.hpp | 21 + .../lang/ast/fun/strip_prob_fun_suffix.hpp | 20 + .../ast/fun/strip_prob_fun_suffix_def.hpp | 23 + .../src/stan/lang/ast/fun/template.hpp | 11 + .../src/stan/lang/ast/fun/var_occurs_vis.hpp | 224 + .../stan/lang/ast/fun/var_occurs_vis_def.hpp | 100 + .../stan/lang/ast/fun/var_type_arg1_vis.hpp | 210 + .../lang/ast/fun/var_type_arg1_vis_def.hpp | 100 + .../stan/lang/ast/fun/var_type_arg2_vis.hpp | 213 + .../lang/ast/fun/var_type_arg2_vis_def.hpp | 100 + .../stan/lang/ast/fun/var_type_name_vis.hpp | 211 + .../lang/ast/fun/var_type_name_vis_def.hpp | 104 + .../lang/ast/fun/write_bare_expr_type.hpp | 20 + .../lang/ast/fun/write_bare_expr_type_def.hpp | 44 + .../lang/ast/fun/write_block_var_type.hpp | 20 + .../lang/ast/fun/write_block_var_type_def.hpp | 45 + .../lang/ast/fun/write_expression_vis.hpp | 137 + .../lang/ast/fun/write_expression_vis_def.hpp | 193 + .../src/stan/lang/ast/fun/write_idx_vis.hpp | 59 + .../stan/lang/ast/fun/write_idx_vis_def.hpp | 46 + .../include/src/stan/lang/ast/nil.hpp | 15 + .../src/stan/lang/ast/node/algebra_solver.hpp | 62 + .../lang/ast/node/algebra_solver_control.hpp | 84 + .../ast/node/algebra_solver_control_def.hpp | 28 + .../stan/lang/ast/node/algebra_solver_def.hpp | 24 + .../src/stan/lang/ast/node/array_expr.hpp | 50 + .../src/stan/lang/ast/node/array_expr_def.hpp | 15 + .../include/src/stan/lang/ast/node/assgn.hpp | 89 + .../src/stan/lang/ast/node/assgn_def.hpp | 33 + .../src/stan/lang/ast/node/binary_op.hpp | 55 + .../src/stan/lang/ast/node/binary_op_def.hpp | 21 + .../src/stan/lang/ast/node/block_var_decl.hpp | 97 + .../stan/lang/ast/node/block_var_decl_def.hpp | 35 + .../ast/node/break_continue_statement.hpp | 34 + .../ast/node/break_continue_statement_def.hpp | 17 + .../src/stan/lang/ast/node/conditional_op.hpp | 67 + .../stan/lang/ast/node/conditional_op_def.hpp | 23 + .../lang/ast/node/conditional_statement.hpp | 46 + .../ast/node/conditional_statement_def.hpp | 19 + .../src/stan/lang/ast/node/distribution.hpp | 29 + .../src/stan/lang/ast/node/double_literal.hpp | 45 + .../stan/lang/ast/node/double_literal_def.hpp | 18 + .../src/stan/lang/ast/node/expression.hpp | 91 + .../src/stan/lang/ast/node/expression_def.hpp | 88 + .../lang/ast/node/for_array_statement.hpp | 49 + .../lang/ast/node/for_array_statement_def.hpp | 19 + .../lang/ast/node/for_matrix_statement.hpp | 49 + .../ast/node/for_matrix_statement_def.hpp | 19 + .../src/stan/lang/ast/node/for_statement.hpp | 50 + .../stan/lang/ast/node/for_statement_def.hpp | 18 + .../include/src/stan/lang/ast/node/fun.hpp | 57 + .../src/stan/lang/ast/node/fun_def.hpp | 18 + .../stan/lang/ast/node/function_decl_def.hpp | 67 + .../lang/ast/node/function_decl_def_def.hpp | 31 + .../stan/lang/ast/node/function_decl_defs.hpp | 35 + .../lang/ast/node/function_decl_defs_def.hpp | 18 + .../include/src/stan/lang/ast/node/idx.hpp | 88 + .../src/stan/lang/ast/node/idx_def.hpp | 31 + .../ast/node/increment_log_prob_statement.hpp | 38 + .../node/increment_log_prob_statement_def.hpp | 17 + .../src/stan/lang/ast/node/index_op.hpp | 53 + .../src/stan/lang/ast/node/index_op_def.hpp | 27 + .../stan/lang/ast/node/index_op_sliced.hpp | 55 + .../lang/ast/node/index_op_sliced_def.hpp | 20 + .../src/stan/lang/ast/node/int_literal.hpp | 36 + .../stan/lang/ast/node/int_literal_def.hpp | 15 + .../src/stan/lang/ast/node/integrate_1d.hpp | 72 + .../stan/lang/ast/node/integrate_1d_def.hpp | 26 + .../src/stan/lang/ast/node/integrate_ode.hpp | 81 + .../lang/ast/node/integrate_ode_control.hpp | 104 + .../ast/node/integrate_ode_control_def.hpp | 32 + .../stan/lang/ast/node/integrate_ode_def.hpp | 28 + .../include/src/stan/lang/ast/node/lb_idx.hpp | 33 + .../src/stan/lang/ast/node/lb_idx_def.hpp | 15 + .../src/stan/lang/ast/node/local_var_decl.hpp | 96 + .../stan/lang/ast/node/local_var_decl_def.hpp | 34 + .../src/stan/lang/ast/node/lub_idx.hpp | 40 + .../src/stan/lang/ast/node/lub_idx_def.hpp | 16 + .../src/stan/lang/ast/node/map_rect.hpp | 118 + .../src/stan/lang/ast/node/map_rect_def.hpp | 52 + .../src/stan/lang/ast/node/matrix_expr.hpp | 52 + .../stan/lang/ast/node/matrix_expr_def.hpp | 17 + .../src/stan/lang/ast/node/multi_idx.hpp | 30 + .../src/stan/lang/ast/node/multi_idx_def.hpp | 15 + .../stan/lang/ast/node/no_op_statement.hpp | 14 + .../stan/lang/ast/node/offset_multiplier.hpp | 57 + .../lang/ast/node/offset_multiplier_def.hpp | 23 + .../src/stan/lang/ast/node/omni_idx.hpp | 19 + .../src/stan/lang/ast/node/omni_idx_def.hpp | 13 + .../stan/lang/ast/node/print_statement.hpp | 36 + .../lang/ast/node/print_statement_def.hpp | 17 + .../src/stan/lang/ast/node/printable.hpp | 65 + .../src/stan/lang/ast/node/printable_def.hpp | 23 + .../src/stan/lang/ast/node/program.hpp | 100 + .../src/stan/lang/ast/node/program_def.hpp | 28 + .../include/src/stan/lang/ast/node/range.hpp | 55 + .../src/stan/lang/ast/node/range_def.hpp | 20 + .../stan/lang/ast/node/reject_statement.hpp | 36 + .../lang/ast/node/reject_statement_def.hpp | 17 + .../stan/lang/ast/node/return_statement.hpp | 33 + .../lang/ast/node/return_statement_def.hpp | 16 + .../stan/lang/ast/node/row_vector_expr.hpp | 51 + .../lang/ast/node/row_vector_expr_def.hpp | 18 + .../include/src/stan/lang/ast/node/sample.hpp | 68 + .../src/stan/lang/ast/node/sample_def.hpp | 26 + .../src/stan/lang/ast/node/statement.hpp | 219 + .../src/stan/lang/ast/node/statement_def.hpp | 52 + .../src/stan/lang/ast/node/statements.hpp | 45 + .../src/stan/lang/ast/node/statements_def.hpp | 18 + .../include/src/stan/lang/ast/node/ub_idx.hpp | 33 + .../src/stan/lang/ast/node/ub_idx_def.hpp | 15 + .../src/stan/lang/ast/node/unary_op.hpp | 47 + .../src/stan/lang/ast/node/unary_op_def.hpp | 16 + .../src/stan/lang/ast/node/uni_idx.hpp | 33 + .../src/stan/lang/ast/node/uni_idx_def.hpp | 15 + .../src/stan/lang/ast/node/var_decl.hpp | 85 + .../src/stan/lang/ast/node/var_decl_def.hpp | 30 + .../src/stan/lang/ast/node/variable.hpp | 47 + .../src/stan/lang/ast/node/variable_def.hpp | 18 + .../src/stan/lang/ast/node/variable_dims.hpp | 43 + .../stan/lang/ast/node/variable_dims_def.hpp | 19 + .../stan/lang/ast/node/while_statement.hpp | 42 + .../lang/ast/node/while_statement_def.hpp | 17 + .../src/stan/lang/ast/origin_block.hpp | 86 + .../include/src/stan/lang/ast/scope.hpp | 156 + .../include/src/stan/lang/ast/scope_def.hpp | 94 + .../lang/ast/sigs/function_signature_t.hpp | 20 + .../lang/ast/sigs/function_signatures.hpp | 411 + .../lang/ast/sigs/function_signatures_def.hpp | 516 + .../stan/lang/ast/type/bare_array_type.hpp | 65 + .../lang/ast/type/bare_array_type_def.hpp | 69 + .../src/stan/lang/ast/type/bare_expr_type.hpp | 277 + .../stan/lang/ast/type/bare_expr_type_def.hpp | 188 + .../stan/lang/ast/type/block_array_type.hpp | 79 + .../lang/ast/type/block_array_type_def.hpp | 63 + .../src/stan/lang/ast/type/block_var_type.hpp | 311 + .../stan/lang/ast/type/block_var_type_def.hpp | 175 + .../type/cholesky_factor_corr_block_type.hpp | 38 + .../cholesky_factor_corr_block_type_def.hpp | 18 + .../type/cholesky_factor_cov_block_type.hpp | 52 + .../cholesky_factor_cov_block_type_def.hpp | 20 + .../lang/ast/type/corr_matrix_block_type.hpp | 39 + .../ast/type/corr_matrix_block_type_def.hpp | 16 + .../lang/ast/type/cov_matrix_block_type.hpp | 39 + .../ast/type/cov_matrix_block_type_def.hpp | 15 + .../stan/lang/ast/type/double_block_type.hpp | 64 + .../lang/ast/type/double_block_type_def.hpp | 30 + .../src/stan/lang/ast/type/double_type.hpp | 38 + .../stan/lang/ast/type/double_type_def.hpp | 17 + .../stan/lang/ast/type/ill_formed_type.hpp | 32 + .../lang/ast/type/ill_formed_type_def.hpp | 15 + .../src/stan/lang/ast/type/int_block_type.hpp | 38 + .../stan/lang/ast/type/int_block_type_def.hpp | 16 + .../src/stan/lang/ast/type/int_type.hpp | 38 + .../src/stan/lang/ast/type/int_type_def.hpp | 17 + .../stan/lang/ast/type/local_array_type.hpp | 78 + .../lang/ast/type/local_array_type_def.hpp | 63 + .../src/stan/lang/ast/type/local_var_type.hpp | 193 + .../stan/lang/ast/type/local_var_type_def.hpp | 119 + .../stan/lang/ast/type/matrix_block_type.hpp | 96 + .../lang/ast/type/matrix_block_type_def.hpp | 39 + .../stan/lang/ast/type/matrix_local_type.hpp | 50 + .../lang/ast/type/matrix_local_type_def.hpp | 18 + .../src/stan/lang/ast/type/matrix_type.hpp | 38 + .../stan/lang/ast/type/matrix_type_def.hpp | 17 + .../src/stan/lang/ast/type/order_id.hpp | 22 + .../stan/lang/ast/type/ordered_block_type.hpp | 40 + .../lang/ast/type/ordered_block_type_def.hpp | 15 + .../ast/type/positive_ordered_block_type.hpp | 39 + .../type/positive_ordered_block_type_def.hpp | 17 + .../lang/ast/type/row_vector_block_type.hpp | 81 + .../ast/type/row_vector_block_type_def.hpp | 37 + .../lang/ast/type/row_vector_local_type.hpp | 38 + .../ast/type/row_vector_local_type_def.hpp | 15 + .../stan/lang/ast/type/row_vector_type.hpp | 38 + .../lang/ast/type/row_vector_type_def.hpp | 17 + .../stan/lang/ast/type/simplex_block_type.hpp | 38 + .../lang/ast/type/simplex_block_type_def.hpp | 15 + .../lang/ast/type/unit_vector_block_type.hpp | 39 + .../ast/type/unit_vector_block_type_def.hpp | 16 + .../stan/lang/ast/type/vector_block_type.hpp | 81 + .../lang/ast/type/vector_block_type_def.hpp | 35 + .../stan/lang/ast/type/vector_local_type.hpp | 39 + .../lang/ast/type/vector_local_type_def.hpp | 15 + .../src/stan/lang/ast/type/vector_type.hpp | 38 + .../stan/lang/ast/type/vector_type_def.hpp | 17 + .../src/stan/lang/ast/type/void_type.hpp | 32 + .../src/stan/lang/ast/type/void_type_def.hpp | 15 + .../src/stan/lang/ast/variable_map.hpp | 97 + .../src/stan/lang/ast/variable_map_def.hpp | 41 + .../include/src/stan/lang/ast_def.cpp | 152 + .../src/stan/lang/compile_functions.hpp | 55 + .../include/src/stan/lang/compiler.hpp | 53 + .../src/stan/lang/function_signatures.h | 1618 + .../include/src/stan/lang/generator.hpp | 115 + .../src/stan/lang/generator/constants.hpp | 52 + .../stan/lang/generator/expression_visgen.hpp | 314 + .../stan/lang/generator/fun_scalar_type.hpp | 61 + .../stan/lang/generator/generate_arg_decl.hpp | 38 + .../generator/generate_array_builder_adds.hpp | 31 + .../lang/generator/generate_bare_type.hpp | 58 + .../lang/generator/generate_block_var.hpp | 67 + .../generate_catch_throw_located.hpp | 37 + .../lang/generator/generate_class_decl.hpp | 26 + .../generator/generate_class_decl_end.hpp | 15 + .../stan/lang/generator/generate_comment.hpp | 26 + ...enerate_constrained_param_names_method.hpp | 46 + .../lang/generator/generate_constructor.hpp | 139 + .../src/stan/lang/generator/generate_cpp.hpp | 87 + .../lang/generator/generate_data_var_ctor.hpp | 42 + .../lang/generator/generate_data_var_init.hpp | 62 + .../lang/generator/generate_destructor.hpp | 25 + .../lang/generator/generate_dims_method.hpp | 60 + .../lang/generator/generate_expression.hpp | 29 + .../generate_fun_inst_templ_params.hpp | 63 + .../stan/lang/generator/generate_function.hpp | 54 + .../generator/generate_function_arguments.hpp | 77 + .../lang/generator/generate_function_body.hpp | 52 + .../generator/generate_function_functor.hpp | 59 + .../generate_function_inline_return_type.hpp | 35 + .../generate_function_instantiation.hpp | 62 + .../generate_function_instantiation_body.hpp | 72 + .../generate_function_instantiation_name.hpp | 26 + .../generate_function_instantiations.hpp | 33 + .../lang/generator/generate_function_name.hpp | 23 + .../generate_function_template_parameters.hpp | 66 + .../lang/generator/generate_functions.hpp | 33 + .../generator/generate_functor_arguments.hpp | 45 + .../stan/lang/generator/generate_globals.hpp | 21 + .../src/stan/lang/generator/generate_idx.hpp | 25 + .../stan/lang/generator/generate_idx_user.hpp | 26 + .../src/stan/lang/generator/generate_idxs.hpp | 45 + .../lang/generator/generate_idxs_user.hpp | 34 + .../stan/lang/generator/generate_include.hpp | 26 + .../stan/lang/generator/generate_includes.hpp | 25 + .../stan/lang/generator/generate_indent.hpp | 24 + .../lang/generator/generate_indexed_expr.hpp | 83 + .../generator/generate_indexed_expr_user.hpp | 42 + .../lang/generator/generate_initializer.hpp | 61 + .../lang/generator/generate_line_number.hpp | 34 + .../generate_local_var_decl_inits.hpp | 81 + .../stan/lang/generator/generate_log_prob.hpp | 126 + .../generator/generate_member_var_decls.hpp | 49 + .../generate_member_var_decls_all.hpp | 26 + .../generate_model_compile_info_method.hpp | 30 + .../generator/generate_model_name_method.hpp | 27 + .../lang/generator/generate_model_typedef.hpp | 37 + .../lang/generator/generate_namespace_end.hpp | 19 + .../generator/generate_namespace_start.hpp | 24 + .../generator/generate_param_names_array.hpp | 58 + .../generator/generate_param_names_method.hpp | 37 + .../lang/generator/generate_param_var.hpp | 84 + .../lang/generator/generate_printable.hpp | 25 + .../lang/generator/generate_private_decl.hpp | 21 + .../generator/generate_program_reader_fun.hpp | 37 + .../generate_propto_default_function.hpp | 38 + .../generate_propto_default_function_body.hpp | 38 + .../lang/generator/generate_public_decl.hpp | 21 + .../generator/generate_quoted_expression.hpp | 24 + .../lang/generator/generate_quoted_string.hpp | 30 + .../generate_read_transform_params.hpp | 74 + .../lang/generator/generate_real_var_type.hpp | 29 + .../lang/generator/generate_register_mpi.hpp | 25 + .../generator/generate_set_param_ranges.hpp | 60 + .../generate_standalone_functions.hpp | 61 + .../lang/generator/generate_statement.hpp | 37 + .../lang/generator/generate_statements.hpp | 28 + .../generate_transform_inits_method.hpp | 177 + .../src/stan/lang/generator/generate_try.hpp | 26 + .../stan/lang/generator/generate_typedef.hpp | 26 + .../stan/lang/generator/generate_typedefs.hpp | 28 + ...nerate_unconstrained_param_names_array.hpp | 60 + ...erate_unconstrained_param_names_method.hpp | 48 + .../stan/lang/generator/generate_using.hpp | 25 + .../generator/generate_using_namespace.hpp | 25 + .../stan/lang/generator/generate_usings.hpp | 33 + .../generate_usings_standalone_functions.hpp | 29 + .../generator/generate_validate_block_var.hpp | 31 + .../generate_validate_context_size.hpp | 62 + .../generate_validate_nonnegative.hpp | 42 + .../generate_validate_tparam_inits.hpp | 63 + .../generator/generate_validate_var_decl.hpp | 79 + .../generator/generate_validate_var_dims.hpp | 47 + .../generator/generate_var_constructor.hpp | 39 + .../generator/generate_var_fill_define.hpp | 46 + .../generator/generate_version_comment.hpp | 25 + .../generator/generate_void_statement.hpp | 29 + .../generator/generate_write_array_method.hpp | 167 + .../generator/generate_write_block_var.hpp | 36 + .../lang/generator/get_block_var_dims.hpp | 41 + .../lang/generator/get_typedef_var_type.hpp | 30 + .../lang/generator/get_verbose_var_type.hpp | 30 + .../stan/lang/generator/idx_user_visgen.hpp | 53 + .../src/stan/lang/generator/idx_visgen.hpp | 59 + .../generator/is_numbered_statement_vis.hpp | 59 + .../stan/lang/generator/printable_visgen.hpp | 47 + .../stan/lang/generator/statement_visgen.hpp | 388 + .../src/stan/lang/generator/visgen.hpp | 59 + .../write_begin_all_dims_col_maj_loop.hpp | 87 + .../write_begin_all_dims_row_maj_loop.hpp | 86 + .../generator/write_begin_array_dims_loop.hpp | 51 + .../write_begin_param_elements_loop.hpp | 91 + .../lang/generator/write_constraints_fn.hpp | 86 + .../stan/lang/generator/write_end_loop.hpp | 28 + .../write_nested_resize_loop_begin.hpp | 73 + .../lang/generator/write_resize_var_idx.hpp | 23 + .../lang/generator/write_var_decl_arg.hpp | 81 + .../lang/generator/write_var_decl_type.hpp | 46 + .../lang/generator/write_var_idx_all_dims.hpp | 34 + .../generator/write_var_idx_all_dims_msg.hpp | 33 + .../generator/write_var_idx_array_dims.hpp | 24 + .../stan/lang/grammars/bare_type_grammar.hpp | 51 + .../lang/grammars/bare_type_grammar_def.hpp | 60 + .../lang/grammars/bare_type_grammar_inst.cpp | 11 + .../lang/grammars/block_var_decls_grammar.hpp | 163 + .../grammars/block_var_decls_grammar_def.hpp | 320 + .../grammars/block_var_decls_grammar_inst.cpp | 8 + .../lang/grammars/common_adaptors_def.hpp | 12 + .../lang/grammars/expression07_grammar.hpp | 46 + .../grammars/expression07_grammar_def.hpp | 48 + .../grammars/expression07_grammar_inst.cpp | 8 + .../stan/lang/grammars/expression_grammar.hpp | 58 + .../lang/grammars/expression_grammar_def.hpp | 94 + .../lang/grammars/expression_grammar_inst.cpp | 8 + .../stan/lang/grammars/functions_grammar.hpp | 61 + .../lang/grammars/functions_grammar_def.hpp | 98 + .../lang/grammars/functions_grammar_inst.cpp | 8 + .../stan/lang/grammars/indexes_grammar.hpp | 74 + .../lang/grammars/indexes_grammar_def.hpp | 89 + .../lang/grammars/indexes_grammar_inst.cpp | 9 + .../stan/lang/grammars/iterator_typedefs.hpp | 14 + .../lang/grammars/local_var_decls_grammar.hpp | 98 + .../grammars/local_var_decls_grammar_def.hpp | 140 + .../grammars/local_var_decls_grammar_inst.cpp | 8 + .../stan/lang/grammars/program_grammar.hpp | 89 + .../lang/grammars/program_grammar_def.hpp | 141 + .../lang/grammars/program_grammar_inst.cpp | 8 + .../stan/lang/grammars/semantic_actions.hpp | 1009 + .../lang/grammars/semantic_actions_def.cpp | 2979 ++ .../lang/grammars/statement_2_grammar.hpp | 43 + .../lang/grammars/statement_2_grammar_def.hpp | 60 + .../grammars/statement_2_grammar_inst.cpp | 8 + .../stan/lang/grammars/statement_grammar.hpp | 153 + .../lang/grammars/statement_grammar_def.hpp | 320 + .../lang/grammars/statement_grammar_inst.cpp | 8 + .../src/stan/lang/grammars/term_grammar.hpp | 135 + .../stan/lang/grammars/term_grammar_def.hpp | 352 + .../stan/lang/grammars/term_grammar_inst.cpp | 8 + .../stan/lang/grammars/whitespace_grammar.hpp | 23 + .../lang/grammars/whitespace_grammar_def.hpp | 30 + .../lang/grammars/whitespace_grammar_inst.cpp | 8 + .../include/src/stan/lang/parser.hpp | 109 + .../include/src/stan/lang/rethrow_located.hpp | 168 + .../include/src/stan/mcmc/base_adaptation.hpp | 17 + .../include/src/stan/mcmc/base_adapter.hpp | 23 + .../include/src/stan/mcmc/base_mcmc.hpp | 36 + .../include/src/stan/mcmc/chains.hpp | 623 + .../src/stan/mcmc/covar_adaptation.hpp | 49 + .../src/stan/mcmc/fixed_param_sampler.hpp | 22 + .../include/src/stan/mcmc/hmc/base_hmc.hpp | 200 + .../hmc/hamiltonians/base_hamiltonian.hpp | 102 + .../mcmc/hmc/hamiltonians/dense_e_metric.hpp | 59 + .../mcmc/hmc/hamiltonians/dense_e_point.hpp | 59 + .../mcmc/hmc/hamiltonians/diag_e_metric.hpp | 55 + .../mcmc/hmc/hamiltonians/diag_e_point.hpp | 57 + .../stan/mcmc/hmc/hamiltonians/ps_point.hpp | 57 + .../mcmc/hmc/hamiltonians/softabs_metric.hpp | 199 + .../mcmc/hmc/hamiltonians/softabs_point.hpp | 51 + .../mcmc/hmc/hamiltonians/unit_e_metric.hpp | 50 + .../mcmc/hmc/hamiltonians/unit_e_point.hpp | 24 + .../mcmc/hmc/integrators/base_integrator.hpp | 22 + .../mcmc/hmc/integrators/base_leapfrog.hpp | 117 + .../mcmc/hmc/integrators/expl_leapfrog.hpp | 37 + .../mcmc/hmc/integrators/impl_leapfrog.hpp | 93 + .../stan/mcmc/hmc/nuts/adapt_dense_e_nuts.hpp | 53 + .../stan/mcmc/hmc/nuts/adapt_diag_e_nuts.hpp | 53 + .../stan/mcmc/hmc/nuts/adapt_softabs_nuts.hpp | 42 + .../stan/mcmc/hmc/nuts/adapt_unit_e_nuts.hpp | 42 + .../src/stan/mcmc/hmc/nuts/base_nuts.hpp | 365 + .../src/stan/mcmc/hmc/nuts/dense_e_nuts.hpp | 25 + .../src/stan/mcmc/hmc/nuts/diag_e_nuts.hpp | 25 + .../src/stan/mcmc/hmc/nuts/softabs_nuts.hpp | 25 + .../src/stan/mcmc/hmc/nuts/unit_e_nuts.hpp | 25 + .../adapt_dense_e_nuts_classic.hpp | 53 + .../adapt_diag_e_nuts_classic.hpp | 54 + .../adapt_unit_e_nuts_classic.hpp | 43 + .../hmc/nuts_classic/base_nuts_classic.hpp | 255 + .../hmc/nuts_classic/dense_e_nuts_classic.hpp | 32 + .../hmc/nuts_classic/diag_e_nuts_classic.hpp | 32 + .../hmc/nuts_classic/unit_e_nuts_classic.hpp | 29 + .../hmc/static/adapt_dense_e_static_hmc.hpp | 57 + .../hmc/static/adapt_diag_e_static_hmc.hpp | 57 + .../hmc/static/adapt_softabs_static_hmc.hpp | 46 + .../hmc/static/adapt_unit_e_static_hmc.hpp | 46 + .../stan/mcmc/hmc/static/base_static_hmc.hpp | 130 + .../mcmc/hmc/static/dense_e_static_hmc.hpp | 27 + .../mcmc/hmc/static/diag_e_static_hmc.hpp | 27 + .../mcmc/hmc/static/softabs_static_hmc.hpp | 27 + .../mcmc/hmc/static/unit_e_static_hmc.hpp | 27 + .../adapt_dense_e_static_uniform.hpp | 54 + .../adapt_diag_e_static_uniform.hpp | 53 + .../adapt_softabs_static_uniform.hpp | 45 + .../adapt_unit_e_static_uniform.hpp | 46 + .../static_uniform/base_static_uniform.hpp | 151 + .../static_uniform/dense_e_static_uniform.hpp | 28 + .../static_uniform/diag_e_static_uniform.hpp | 27 + .../static_uniform/softabs_static_uniform.hpp | 28 + .../static_uniform/unit_e_static_uniform.hpp | 27 + .../stan/mcmc/hmc/xhmc/adapt_dense_e_xhmc.hpp | 53 + .../stan/mcmc/hmc/xhmc/adapt_diag_e_xhmc.hpp | 53 + .../stan/mcmc/hmc/xhmc/adapt_softabs_xhmc.hpp | 42 + .../stan/mcmc/hmc/xhmc/adapt_unit_e_xhmc.hpp | 42 + .../src/stan/mcmc/hmc/xhmc/base_xhmc.hpp | 279 + .../src/stan/mcmc/hmc/xhmc/dense_e_xhmc.hpp | 25 + .../src/stan/mcmc/hmc/xhmc/diag_e_xhmc.hpp | 25 + .../src/stan/mcmc/hmc/xhmc/softabs_xhmc.hpp | 25 + .../src/stan/mcmc/hmc/xhmc/unit_e_xhmc.hpp | 25 + .../include/src/stan/mcmc/sample.hpp | 62 + .../src/stan/mcmc/stepsize_adaptation.hpp | 90 + .../src/stan/mcmc/stepsize_adapter.hpp | 31 + .../src/stan/mcmc/stepsize_covar_adapter.hpp | 43 + .../src/stan/mcmc/stepsize_var_adapter.hpp | 40 + .../include/src/stan/mcmc/var_adaptation.hpp | 47 + .../src/stan/mcmc/windowed_adaptation.hpp | 127 + .../src/stan/model/finite_diff_grad.hpp | 56 + .../src/stan/model/grad_hess_log_prob.hpp | 74 + .../stan/model/grad_tr_mat_times_hessian.hpp | 23 + .../include/src/stan/model/gradient.hpp | 39 + .../src/stan/model/gradient_dot_vector.hpp | 23 + .../include/src/stan/model/hessian.hpp | 22 + .../src/stan/model/hessian_times_vector.hpp | 23 + .../include/src/stan/model/indexing.hpp | 13 + .../stan/model/indexing/access_helpers.hpp | 36 + .../src/stan/model/indexing/deep_copy.hpp | 31 + .../include/src/stan/model/indexing/index.hpp | 106 + .../src/stan/model/indexing/index_list.hpp | 73 + .../src/stan/model/indexing/lvalue.hpp | 977 + .../src/stan/model/indexing/lvalue_varmat.hpp | 460 + .../src/stan/model/indexing/rvalue.hpp | 831 + .../src/stan/model/indexing/rvalue_at.hpp | 77 + .../stan/model/indexing/rvalue_index_size.hpp | 70 + .../src/stan/model/indexing/rvalue_return.hpp | 219 + .../src/stan/model/indexing/rvalue_varmat.hpp | 321 + .../include/src/stan/model/log_prob_grad.hpp | 93 + .../src/stan/model/log_prob_propto.hpp | 99 + .../include/src/stan/model/model_base.hpp | 600 + .../src/stan/model/model_base_crtp.hpp | 206 + .../src/stan/model/model_functional.hpp | 28 + .../include/src/stan/model/model_header.hpp | 30 + .../include/src/stan/model/prob_grad.hpp | 88 + .../model/standalone_functions_header.hpp | 20 + .../include/src/stan/model/test_gradients.hpp | 99 + .../include/src/stan/optimization/bfgs.hpp | 433 + .../src/stan/optimization/bfgs_linesearch.hpp | 293 + .../src/stan/optimization/bfgs_update.hpp | 64 + .../src/stan/optimization/lbfgs_update.hpp | 112 + .../include/src/stan/optimization/newton.hpp | 76 + .../src/stan/services/diagnose/defaults.hpp | 75 + .../src/stan/services/diagnose/diagnose.hpp | 64 + .../include/src/stan/services/error_codes.hpp | 21 + .../services/experimental/advi/defaults.hpp | 317 + .../services/experimental/advi/fullrank.hpp | 91 + .../services/experimental/advi/meanfield.hpp | 91 + .../src/stan/services/optimize/bfgs.hpp | 183 + .../src/stan/services/optimize/defaults.hpp | 314 + .../src/stan/services/optimize/lbfgs.hpp | 186 + .../src/stan/services/optimize/newton.hpp | 125 + .../src/stan/services/sample/defaults.hpp | 473 + .../src/stan/services/sample/fixed_param.hpp | 86 + .../stan/services/sample/hmc_nuts_dense_e.hpp | 138 + .../sample/hmc_nuts_dense_e_adapt.hpp | 162 + .../stan/services/sample/hmc_nuts_diag_e.hpp | 137 + .../services/sample/hmc_nuts_diag_e_adapt.hpp | 160 + .../stan/services/sample/hmc_nuts_unit_e.hpp | 76 + .../services/sample/hmc_nuts_unit_e_adapt.hpp | 85 + .../services/sample/hmc_static_dense_e.hpp | 131 + .../sample/hmc_static_dense_e_adapt.hpp | 161 + .../services/sample/hmc_static_diag_e.hpp | 138 + .../sample/hmc_static_diag_e_adapt.hpp | 161 + .../services/sample/hmc_static_unit_e.hpp | 76 + .../sample/hmc_static_unit_e_adapt.hpp | 86 + .../stan/services/sample/standalone_gqs.hpp | 129 + .../src/stan/services/util/create_rng.hpp | 36 + .../util/create_unit_e_dense_inv_metric.hpp | 37 + .../util/create_unit_e_diag_inv_metric.hpp | 33 + .../services/util/experimental_message.hpp | 36 + .../services/util/generate_transitions.hpp | 77 + .../src/stan/services/util/gq_writer.hpp | 98 + .../src/stan/services/util/initialize.hpp | 233 + .../src/stan/services/util/inv_metric.hpp | 6 + .../src/stan/services/util/mcmc_writer.hpp | 258 + .../services/util/read_dense_inv_metric.hpp | 48 + .../services/util/read_diag_inv_metric.hpp | 50 + .../services/util/run_adaptive_sampler.hpp | 93 + .../src/stan/services/util/run_sampler.hpp | 78 + .../util/validate_dense_inv_metric.hpp | 33 + .../util/validate_diag_inv_metric.hpp | 33 + .../include/src/stan/variational/advi.hpp | 568 + .../src/stan/variational/base_family.hpp | 107 + .../variational/families/normal_fullrank.hpp | 523 + .../variational/families/normal_meanfield.hpp | 453 + .../src/stan/variational/print_progress.hpp | 51 + .../StanHeaders/include/src/stan/version.hpp | 31 + .../new/StanHeaders/include/stan/math.hpp | 21 + .../new/StanHeaders/include/stan/math/fwd.hpp | 17 + .../include/stan/math/fwd/core.hpp | 24 + .../include/stan/math/fwd/core/fvar.hpp | 268 + .../stan/math/fwd/core/operator_addition.hpp | 50 + .../stan/math/fwd/core/operator_division.hpp | 102 + .../stan/math/fwd/core/operator_equal.hpp | 54 + .../math/fwd/core/operator_greater_than.hpp | 56 + .../core/operator_greater_than_or_equal.hpp | 58 + .../stan/math/fwd/core/operator_less_than.hpp | 57 + .../fwd/core/operator_less_than_or_equal.hpp | 56 + .../math/fwd/core/operator_logical_and.hpp | 55 + .../math/fwd/core/operator_logical_or.hpp | 55 + .../math/fwd/core/operator_multiplication.hpp | 97 + .../stan/math/fwd/core/operator_not_equal.hpp | 55 + .../math/fwd/core/operator_subtraction.hpp | 50 + .../math/fwd/core/operator_unary_minus.hpp | 22 + .../stan/math/fwd/core/operator_unary_not.hpp | 24 + .../math/fwd/core/operator_unary_plus.hpp | 25 + .../stan/math/fwd/core/std_complex.hpp | 72 + .../math/fwd/core/std_iterator_traits.hpp | 42 + .../stan/math/fwd/core/std_numeric_limits.hpp | 134 + .../StanHeaders/include/stan/math/fwd/fun.hpp | 119 + .../stan/math/fwd/fun/Eigen_NumTraits.hpp | 232 + .../include/stan/math/fwd/fun/Phi.hpp | 23 + .../include/stan/math/fwd/fun/Phi_approx.hpp | 30 + .../include/stan/math/fwd/fun/abs.hpp | 41 + .../include/stan/math/fwd/fun/acos.hpp | 35 + .../include/stan/math/fwd/fun/acosh.hpp | 35 + .../include/stan/math/fwd/fun/arg.hpp | 26 + .../include/stan/math/fwd/fun/asin.hpp | 35 + .../include/stan/math/fwd/fun/asinh.hpp | 34 + .../include/stan/math/fwd/fun/atan.hpp | 34 + .../include/stan/math/fwd/fun/atan2.hpp | 36 + .../include/stan/math/fwd/fun/atanh.hpp | 42 + .../stan/math/fwd/fun/bessel_first_kind.hpp | 20 + .../stan/math/fwd/fun/bessel_second_kind.hpp | 20 + .../include/stan/math/fwd/fun/beta.hpp | 75 + .../stan/math/fwd/fun/binary_log_loss.hpp | 22 + .../include/stan/math/fwd/fun/cbrt.hpp | 26 + .../include/stan/math/fwd/fun/ceil.hpp | 19 + .../include/stan/math/fwd/fun/conj.hpp | 26 + .../include/stan/math/fwd/fun/cos.hpp | 34 + .../include/stan/math/fwd/fun/cosh.hpp | 35 + .../include/stan/math/fwd/fun/determinant.hpp | 24 + .../include/stan/math/fwd/fun/digamma.hpp | 29 + .../include/stan/math/fwd/fun/erf.hpp | 22 + .../include/stan/math/fwd/fun/erfc.hpp | 22 + .../include/stan/math/fwd/fun/exp.hpp | 32 + .../include/stan/math/fwd/fun/exp2.hpp | 20 + .../include/stan/math/fwd/fun/expm1.hpp | 20 + .../include/stan/math/fwd/fun/fabs.hpp | 31 + .../stan/math/fwd/fun/falling_factorial.hpp | 35 + .../include/stan/math/fwd/fun/fdim.hpp | 67 + .../include/stan/math/fwd/fun/floor.hpp | 19 + .../include/stan/math/fwd/fun/fma.hpp | 126 + .../include/stan/math/fwd/fun/fmax.hpp | 84 + .../include/stan/math/fwd/fun/fmin.hpp | 57 + .../include/stan/math/fwd/fun/fmod.hpp | 41 + .../include/stan/math/fwd/fun/gamma_p.hpp | 66 + .../include/stan/math/fwd/fun/gamma_q.hpp | 91 + .../stan/math/fwd/fun/grad_inc_beta.hpp | 54 + .../include/stan/math/fwd/fun/hypot.hpp | 74 + .../include/stan/math/fwd/fun/inc_beta.hpp | 60 + .../include/stan/math/fwd/fun/inv.hpp | 17 + .../include/stan/math/fwd/fun/inv_Phi.hpp | 23 + .../include/stan/math/fwd/fun/inv_cloglog.hpp | 19 + .../include/stan/math/fwd/fun/inv_logit.hpp | 29 + .../include/stan/math/fwd/fun/inv_sqrt.hpp | 19 + .../include/stan/math/fwd/fun/inv_square.hpp | 18 + .../include/stan/math/fwd/fun/inverse.hpp | 58 + .../include/stan/math/fwd/fun/is_inf.hpp | 27 + .../include/stan/math/fwd/fun/is_nan.hpp | 28 + .../include/stan/math/fwd/fun/lambert_w.hpp | 26 + .../include/stan/math/fwd/fun/lbeta.hpp | 33 + .../include/stan/math/fwd/fun/ldexp.hpp | 28 + .../include/stan/math/fwd/fun/lgamma.hpp | 27 + .../include/stan/math/fwd/fun/lmgamma.hpp | 24 + .../include/stan/math/fwd/fun/log.hpp | 38 + .../include/stan/math/fwd/fun/log10.hpp | 39 + .../include/stan/math/fwd/fun/log1m.hpp | 17 + .../include/stan/math/fwd/fun/log1m_exp.hpp | 32 + .../stan/math/fwd/fun/log1m_inv_logit.hpp | 28 + .../include/stan/math/fwd/fun/log1p.hpp | 18 + .../include/stan/math/fwd/fun/log1p_exp.hpp | 20 + .../include/stan/math/fwd/fun/log2.hpp | 30 + .../stan/math/fwd/fun/log_determinant.hpp | 24 + .../stan/math/fwd/fun/log_diff_exp.hpp | 52 + .../math/fwd/fun/log_falling_factorial.hpp | 33 + .../stan/math/fwd/fun/log_inv_logit.hpp | 19 + .../stan/math/fwd/fun/log_inv_logit_diff.hpp | 59 + .../include/stan/math/fwd/fun/log_mix.hpp | 220 + .../math/fwd/fun/log_rising_factorial.hpp | 32 + .../include/stan/math/fwd/fun/log_softmax.hpp | 57 + .../include/stan/math/fwd/fun/log_sum_exp.hpp | 71 + .../include/stan/math/fwd/fun/logit.hpp | 23 + .../stan/math/fwd/fun/mdivide_left.hpp | 117 + .../stan/math/fwd/fun/mdivide_left_ldlt.hpp | 49 + .../math/fwd/fun/mdivide_left_tri_low.hpp | 120 + .../stan/math/fwd/fun/mdivide_right.hpp | 128 + .../math/fwd/fun/mdivide_right_tri_low.hpp | 131 + .../fwd/fun/modified_bessel_first_kind.hpp | 20 + .../fwd/fun/modified_bessel_second_kind.hpp | 20 + .../include/stan/math/fwd/fun/multiply.hpp | 63 + .../stan/math/fwd/fun/multiply_log.hpp | 32 + .../fun/multiply_lower_tri_self_transpose.hpp | 26 + .../include/stan/math/fwd/fun/norm.hpp | 26 + .../include/stan/math/fwd/fun/owens_t.hpp | 78 + .../include/stan/math/fwd/fun/polar.hpp | 56 + .../include/stan/math/fwd/fun/pow.hpp | 219 + .../stan/math/fwd/fun/primitive_value.hpp | 28 + .../include/stan/math/fwd/fun/proj.hpp | 27 + .../include/stan/math/fwd/fun/quad_form.hpp | 65 + .../stan/math/fwd/fun/quad_form_sym.hpp | 67 + .../include/stan/math/fwd/fun/read_fvar.hpp | 52 + .../stan/math/fwd/fun/rising_factorial.hpp | 34 + .../include/stan/math/fwd/fun/round.hpp | 30 + .../include/stan/math/fwd/fun/sin.hpp | 34 + .../include/stan/math/fwd/fun/sinh.hpp | 33 + .../include/stan/math/fwd/fun/softmax.hpp | 55 + .../include/stan/math/fwd/fun/sqrt.hpp | 36 + .../include/stan/math/fwd/fun/square.hpp | 17 + .../include/stan/math/fwd/fun/sum.hpp | 54 + .../include/stan/math/fwd/fun/tan.hpp | 33 + .../include/stan/math/fwd/fun/tanh.hpp | 35 + .../include/stan/math/fwd/fun/tcrossprod.hpp | 26 + .../include/stan/math/fwd/fun/tgamma.hpp | 28 + .../include/stan/math/fwd/fun/to_fvar.hpp | 71 + .../stan/math/fwd/fun/trace_quad_form.hpp | 29 + .../include/stan/math/fwd/fun/trigamma.hpp | 27 + .../include/stan/math/fwd/fun/trunc.hpp | 26 + .../include/stan/math/fwd/fun/typedefs.hpp | 28 + .../math/fwd/fun/unit_vector_constrain.hpp | 53 + .../include/stan/math/fwd/fun/value_of.hpp | 24 + .../stan/math/fwd/fun/value_of_rec.hpp | 26 + .../include/stan/math/fwd/functor.hpp | 11 + .../math/fwd/functor/apply_scalar_unary.hpp | 39 + .../stan/math/fwd/functor/gradient.hpp | 58 + .../include/stan/math/fwd/functor/hessian.hpp | 72 + .../stan/math/fwd/functor/jacobian.hpp | 37 + .../fwd/functor/operands_and_partials.hpp | 228 + .../stan/math/fwd/functor/reduce_sum.hpp | 104 + .../include/stan/math/fwd/meta.hpp | 7 + .../include/stan/math/memory/stack_alloc.hpp | 291 + .../new/StanHeaders/include/stan/math/mix.hpp | 24 + .../StanHeaders/include/stan/math/mix/fun.hpp | 6 + .../include/stan/math/mix/fun/typedefs.hpp | 27 + .../include/stan/math/mix/functor.hpp | 14 + .../stan/math/mix/functor/derivative.hpp | 33 + .../mix/functor/finite_diff_grad_hessian.hpp | 84 + .../functor/finite_diff_grad_hessian_auto.hpp | 90 + .../stan/math/mix/functor/grad_hessian.hpp | 77 + .../mix/functor/grad_tr_mat_times_hessian.hpp | 57 + .../math/mix/functor/gradient_dot_vector.hpp | 29 + .../include/stan/math/mix/functor/hessian.hpp | 75 + .../math/mix/functor/hessian_times_vector.hpp | 52 + .../math/mix/functor/partial_derivative.hpp | 39 + .../StanHeaders/include/stan/math/mix/mat.hpp | 1 + .../include/stan/math/mix/meta.hpp | 18 + .../include/stan/math/opencl/buffer_types.hpp | 69 + .../stan/math/opencl/cholesky_decompose.hpp | 98 + .../include/stan/math/opencl/copy.hpp | 264 + .../include/stan/math/opencl/err.hpp | 12 + .../math/opencl/err/check_diagonal_zeros.hpp | 53 + .../opencl/err/check_invalid_matrix_view.hpp | 36 + .../math/opencl/err/check_mat_size_one.hpp | 53 + .../stan/math/opencl/err/check_nan.hpp | 49 + .../stan/math/opencl/err/check_opencl.hpp | 234 + .../stan/math/opencl/err/check_symmetric.hpp | 52 + .../stan/math/opencl/err/check_triangular.hpp | 36 + .../include/stan/math/opencl/is_constant.hpp | 24 + .../include/stan/math/opencl/kernel_cl.hpp | 333 + .../stan/math/opencl/kernel_generator.hpp | 143 + .../math/opencl/kernel_generator/append.hpp | 356 + .../as_column_vector_or_scalar.hpp | 334 + .../kernel_generator/as_operation_cl.hpp | 88 + .../kernel_generator/binary_operation.hpp | 281 + .../kernel_generator/block_zero_based.hpp | 340 + .../opencl/kernel_generator/broadcast.hpp | 171 + .../math/opencl/kernel_generator/calc_if.hpp | 146 + .../math/opencl/kernel_generator/check_cl.hpp | 229 + .../kernel_generator/colwise_reduction.hpp | 294 + .../kernel_generator/common_return_scalar.hpp | 17 + .../kernel_generator/compound_assignments.hpp | 31 + .../math/opencl/kernel_generator/constant.hpp | 138 + .../math/opencl/kernel_generator/diagonal.hpp | 146 + .../kernel_generator/elt_function_cl.hpp | 365 + .../opencl/kernel_generator/evaluate_into.hpp | 32 + .../get_kernel_source_for_evaluating_into.hpp | 34 + .../opencl/kernel_generator/holder_cl.hpp | 136 + .../math/opencl/kernel_generator/index.hpp | 145 + .../math/opencl/kernel_generator/indexing.hpp | 307 + .../math/opencl/kernel_generator/load.hpp | 335 + .../kernel_generator/matrix_cl_conversion.hpp | 35 + .../matrix_vector_multiply.hpp | 37 + .../kernel_generator/multi_result_kernel.hpp | 583 + .../kernel_generator/name_generator.hpp | 32 + .../opencl/kernel_generator/operation_cl.hpp | 443 + .../kernel_generator/operation_cl_lhs.hpp | 203 + .../kernel_generator/optional_broadcast.hpp | 248 + .../kernel_generator/rowwise_reduction.hpp | 474 + .../math/opencl/kernel_generator/scalar.hpp | 111 + .../math/opencl/kernel_generator/select.hpp | 173 + .../opencl/kernel_generator/transpose.hpp | 149 + .../math/opencl/kernel_generator/type_str.hpp | 32 + .../kernel_generator/unary_operation_cl.hpp | 171 + .../include/stan/math/opencl/kernels/add.hpp | 58 + .../math/opencl/kernels/batch_identity.hpp | 72 + .../kernels/categorical_logit_glm_lpmf.hpp | 219 + .../opencl/kernels/check_diagonal_zeros.hpp | 51 + .../stan/math/opencl/kernels/check_nan.hpp | 51 + .../math/opencl/kernels/check_symmetric.hpp | 55 + .../opencl/kernels/cholesky_decompose.hpp | 73 + .../include/stan/math/opencl/kernels/copy.hpp | 50 + .../opencl/kernels/device_functions/Phi.hpp | 43 + .../kernels/device_functions/Phi_approx.hpp | 35 + .../opencl/kernels/device_functions/beta.hpp | 37 + .../binomial_coefficient_log.hpp | 110 + .../kernels/device_functions/digamma.hpp | 117 + .../kernels/device_functions/inv_Phi.hpp | 85 + .../kernels/device_functions/inv_logit.hpp | 75 + .../kernels/device_functions/inv_square.hpp | 38 + .../opencl/kernels/device_functions/lbeta.hpp | 124 + .../device_functions/lgamma_stirling.hpp | 42 + .../device_functions/lgamma_stirling_diff.hpp | 80 + .../opencl/kernels/device_functions/log1m.hpp | 38 + .../kernels/device_functions/log1m_exp.hpp | 46 + .../device_functions/log1m_inv_logit.hpp | 56 + .../kernels/device_functions/log1p_exp.hpp | 41 + .../kernels/device_functions/log_diff_exp.hpp | 44 + .../device_functions/log_inv_logit.hpp | 43 + .../device_functions/log_inv_logit_diff.hpp | 42 + .../opencl/kernels/device_functions/logit.hpp | 62 + .../kernels/device_functions/multiply_log.hpp | 72 + .../kernels/device_functions/trigamma.hpp | 85 + .../stan/math/opencl/kernels/diag_inv.hpp | 96 + .../math/opencl/kernels/divide_columns.hpp | 43 + .../math/opencl/kernels/fill_strict_tri.hpp | 60 + .../math/opencl/kernels/gp_exp_quad_cov.hpp | 104 + .../stan/math/opencl/kernels/helpers.hpp | 57 + .../opencl/kernels/inv_lower_tri_multiply.hpp | 138 + .../math/opencl/kernels/matrix_multiply.hpp | 363 + .../opencl/kernels/multiply_transpose.hpp | 128 + .../kernels/neg_binomial_2_log_glm_lpmf.hpp | 208 + .../kernels/neg_rect_lower_tri_multiply.hpp | 131 + .../kernels/ordered_logistic_glm_lpmf.hpp | 192 + .../include/stan/math/opencl/kernels/pack.hpp | 66 + .../stan/math/opencl/kernels/rep_matrix.hpp | 68 + .../opencl/kernels/scalar_mul_diagonal.hpp | 45 + .../opencl/kernels/triangular_transpose.hpp | 59 + .../stan/math/opencl/kernels/unpack.hpp | 71 + .../include/stan/math/opencl/matrix_cl.hpp | 637 + .../stan/math/opencl/matrix_cl_view.hpp | 131 + .../stan/math/opencl/multiply_transpose.hpp | 53 + .../stan/math/opencl/opencl_context.hpp | 442 + .../stan/math/opencl/pinned_matrix.hpp | 172 + .../include/stan/math/opencl/plain_type.hpp | 24 + .../include/stan/math/opencl/prim.hpp | 185 + .../stan/math/opencl/prim/add_diag.hpp | 41 + .../opencl/prim/bernoulli_logit_glm_lpmf.hpp | 173 + .../math/opencl/prim/bernoulli_logit_lpmf.hpp | 93 + .../stan/math/opencl/prim/bernoulli_lpmf.hpp | 116 + .../stan/math/opencl/prim/beta_lpdf.hpp | 141 + .../math/opencl/prim/beta_proportion_lpdf.hpp | 131 + .../stan/math/opencl/prim/binomial_lpmf.hpp | 139 + .../include/stan/math/opencl/prim/block.hpp | 31 + .../prim/categorical_logit_glm_lpmf.hpp | 166 + .../stan/math/opencl/prim/cauchy_lpdf.hpp | 125 + .../stan/math/opencl/prim/chi_square_lpdf.hpp | 109 + .../math/opencl/prim/cholesky_decompose.hpp | 41 + .../include/stan/math/opencl/prim/col.hpp | 29 + .../include/stan/math/opencl/prim/cols.hpp | 27 + .../math/opencl/prim/columns_dot_product.hpp | 48 + .../math/opencl/prim/columns_dot_self.hpp | 39 + .../stan/math/opencl/prim/crossprod.hpp | 29 + .../stan/math/opencl/prim/diag_matrix.hpp | 32 + .../math/opencl/prim/diag_post_multiply.hpp | 40 + .../math/opencl/prim/diag_pre_multiply.hpp | 40 + .../include/stan/math/opencl/prim/dims.hpp | 29 + .../stan/math/opencl/prim/distance.hpp | 43 + .../include/stan/math/opencl/prim/divide.hpp | 26 + .../stan/math/opencl/prim/divide_columns.hpp | 64 + .../stan/math/opencl/prim/dot_product.hpp | 37 + .../stan/math/opencl/prim/dot_self.hpp | 30 + .../opencl/prim/double_exponential_lpdf.hpp | 114 + .../math/opencl/prim/exp_mod_normal_lpdf.hpp | 156 + .../math/opencl/prim/exponential_lpdf.hpp | 115 + .../stan/math/opencl/prim/frechet_lpdf.hpp | 129 + .../stan/math/opencl/prim/gamma_lpdf.hpp | 142 + .../stan/math/opencl/prim/gp_exp_quad_cov.hpp | 79 + .../stan/math/opencl/prim/gumbel_lpdf.hpp | 119 + .../include/stan/math/opencl/prim/head.hpp | 38 + .../include/stan/math/opencl/prim/inv.hpp | 28 + .../math/opencl/prim/inv_chi_square_lpdf.hpp | 122 + .../stan/math/opencl/prim/inv_cloglog.hpp | 60 + .../stan/math/opencl/prim/inv_gamma_lpdf.hpp | 136 + .../stan/math/opencl/prim/inv_sqrt.hpp | 28 + .../stan/math/opencl/prim/logistic_lpdf.hpp | 127 + .../stan/math/opencl/prim/lognormal_lpdf.hpp | 133 + .../math/opencl/prim/mdivide_left_tri_low.hpp | 55 + .../opencl/prim/mdivide_right_tri_low.hpp | 37 + .../include/stan/math/opencl/prim/mean.hpp | 29 + .../stan/math/opencl/prim/multiply.hpp | 145 + .../prim/neg_binomial_2_log_glm_lpmf.hpp | 227 + .../opencl/prim/neg_binomial_2_log_lpmf.hpp | 126 + .../math/opencl/prim/neg_binomial_2_lpmf.hpp | 124 + .../math/opencl/prim/neg_binomial_lpmf.hpp | 119 + .../math/opencl/prim/normal_id_glm_lpdf.hpp | 222 + .../stan/math/opencl/prim/normal_lpdf.hpp | 123 + .../stan/math/opencl/prim/num_elements.hpp | 27 + .../opencl/prim/ordered_logistic_glm_lpmf.hpp | 161 + .../stan/math/opencl/prim/pareto_lpdf.hpp | 130 + .../math/opencl/prim/pareto_type_2_lpdf.hpp | 142 + .../math/opencl/prim/poisson_log_glm_lpmf.hpp | 163 + .../math/opencl/prim/poisson_log_lpmf.hpp | 100 + .../stan/math/opencl/prim/poisson_lpmf.hpp | 99 + .../stan/math/opencl/prim/rayleigh_lpdf.hpp | 102 + .../stan/math/opencl/prim/rep_matrix.hpp | 90 + .../stan/math/opencl/prim/rep_row_vector.hpp | 51 + .../stan/math/opencl/prim/rep_vector.hpp | 51 + .../include/stan/math/opencl/prim/row.hpp | 29 + .../include/stan/math/opencl/prim/rows.hpp | 29 + .../math/opencl/prim/rows_dot_product.hpp | 36 + .../stan/math/opencl/prim/rows_dot_self.hpp | 31 + .../prim/scaled_inv_chi_square_lpdf.hpp | 147 + .../include/stan/math/opencl/prim/segment.hpp | 35 + .../include/stan/math/opencl/prim/sign.hpp | 25 + .../include/stan/math/opencl/prim/size.hpp | 26 + .../math/opencl/prim/skew_normal_lpdf.hpp | 158 + .../math/opencl/prim/squared_distance.hpp | 40 + .../stan/math/opencl/prim/std_normal_lpdf.hpp | 80 + .../stan/math/opencl/prim/student_t_lpdf.hpp | 165 + .../include/stan/math/opencl/prim/sub_col.hpp | 29 + .../include/stan/math/opencl/prim/sub_row.hpp | 29 + .../include/stan/math/opencl/prim/sum.hpp | 38 + .../include/stan/math/opencl/prim/tail.hpp | 38 + .../stan/math/opencl/prim/tcrossprod.hpp | 29 + .../stan/math/opencl/prim/uniform_lpdf.hpp | 129 + .../stan/math/opencl/prim/weibull_lpdf.hpp | 134 + .../stan/math/opencl/ref_type_for_opencl.hpp | 70 + .../include/stan/math/opencl/rev.hpp | 98 + .../include/stan/math/opencl/rev/Phi.hpp | 37 + .../stan/math/opencl/rev/Phi_approx.hpp | 39 + .../include/stan/math/opencl/rev/acos.hpp | 34 + .../include/stan/math/opencl/rev/acosh.hpp | 34 + .../include/stan/math/opencl/rev/add.hpp | 125 + .../include/stan/math/opencl/rev/add_diag.hpp | 58 + .../stan/math/opencl/rev/adjoint_results.hpp | 179 + .../stan/math/opencl/rev/arena_matrix_cl.hpp | 151 + .../stan/math/opencl/rev/arena_type.hpp | 30 + .../opencl/rev/as_column_vector_or_scalar.hpp | 30 + .../include/stan/math/opencl/rev/asin.hpp | 34 + .../include/stan/math/opencl/rev/asinh.hpp | 34 + .../include/stan/math/opencl/rev/atan.hpp | 34 + .../include/stan/math/opencl/rev/atanh.hpp | 34 + .../include/stan/math/opencl/rev/beta.hpp | 51 + .../include/stan/math/opencl/rev/block.hpp | 35 + .../include/stan/math/opencl/rev/cbrt.hpp | 35 + .../include/stan/math/opencl/rev/ceil.hpp | 32 + .../math/opencl/rev/cholesky_decompose.hpp | 79 + .../math/opencl/rev/columns_dot_product.hpp | 75 + .../stan/math/opencl/rev/columns_dot_self.hpp | 54 + .../include/stan/math/opencl/rev/copy.hpp | 105 + .../include/stan/math/opencl/rev/cos.hpp | 32 + .../include/stan/math/opencl/rev/cosh.hpp | 32 + .../stan/math/opencl/rev/crossprod.hpp | 34 + .../stan/math/opencl/rev/diag_matrix.hpp | 32 + .../math/opencl/rev/diag_post_multiply.hpp | 83 + .../math/opencl/rev/diag_pre_multiply.hpp | 78 + .../include/stan/math/opencl/rev/diagonal.hpp | 32 + .../include/stan/math/opencl/rev/digamma.hpp | 30 + .../include/stan/math/opencl/rev/divide.hpp | 55 + .../stan/math/opencl/rev/dot_product.hpp | 46 + .../include/stan/math/opencl/rev/dot_self.hpp | 32 + .../stan/math/opencl/rev/elt_divide.hpp | 109 + .../stan/math/opencl/rev/elt_multiply.hpp | 52 + .../include/stan/math/opencl/rev/erf.hpp | 35 + .../include/stan/math/opencl/rev/erfc.hpp | 35 + .../include/stan/math/opencl/rev/exp.hpp | 31 + .../include/stan/math/opencl/rev/exp2.hpp | 32 + .../include/stan/math/opencl/rev/expm1.hpp | 31 + .../include/stan/math/opencl/rev/fabs.hpp | 34 + .../include/stan/math/opencl/rev/floor.hpp | 33 + .../include/stan/math/opencl/rev/hypot.hpp | 120 + .../include/stan/math/opencl/rev/inv.hpp | 32 + .../include/stan/math/opencl/rev/inv_Phi.hpp | 36 + .../stan/math/opencl/rev/inv_cloglog.hpp | 32 + .../stan/math/opencl/rev/inv_logit.hpp | 33 + .../include/stan/math/opencl/rev/inv_sqrt.hpp | 34 + .../stan/math/opencl/rev/inv_square.hpp | 36 + .../include/stan/math/opencl/rev/lbeta.hpp | 140 + .../include/stan/math/opencl/rev/ldexp.hpp | 65 + .../include/stan/math/opencl/rev/lgamma.hpp | 31 + .../include/stan/math/opencl/rev/log.hpp | 31 + .../include/stan/math/opencl/rev/log10.hpp | 31 + .../include/stan/math/opencl/rev/log1m.hpp | 31 + .../stan/math/opencl/rev/log1m_exp.hpp | 31 + .../stan/math/opencl/rev/log1m_inv_logit.hpp | 32 + .../include/stan/math/opencl/rev/log1p.hpp | 31 + .../stan/math/opencl/rev/log1p_exp.hpp | 31 + .../include/stan/math/opencl/rev/log2.hpp | 31 + .../stan/math/opencl/rev/log_diff_exp.hpp | 149 + .../stan/math/opencl/rev/log_inv_logit.hpp | 31 + .../math/opencl/rev/log_inv_logit_diff.hpp | 134 + .../include/stan/math/opencl/rev/logit.hpp | 31 + .../math/opencl/rev/mdivide_left_tri_low.hpp | 87 + .../math/opencl/rev/mdivide_right_tri_low.hpp | 59 + .../include/stan/math/opencl/rev/multiply.hpp | 120 + .../stan/math/opencl/rev/multiply_log.hpp | 114 + .../math/opencl/rev/operands_and_partials.hpp | 48 + .../math/opencl/rev/operator_unary_minus.hpp | 30 + .../math/opencl/rev/operator_unary_plus.hpp | 27 + .../include/stan/math/opencl/rev/pow.hpp | 163 + .../include/stan/math/opencl/rev/round.hpp | 34 + .../stan/math/opencl/rev/rows_dot_product.hpp | 55 + .../stan/math/opencl/rev/rows_dot_self.hpp | 40 + .../include/stan/math/opencl/rev/sin.hpp | 32 + .../include/stan/math/opencl/rev/sinh.hpp | 32 + .../include/stan/math/opencl/rev/sqrt.hpp | 31 + .../include/stan/math/opencl/rev/square.hpp | 31 + .../stan/math/opencl/rev/squared_distance.hpp | 51 + .../include/stan/math/opencl/rev/subtract.hpp | 142 + .../include/stan/math/opencl/rev/sum.hpp | 32 + .../include/stan/math/opencl/rev/tan.hpp | 34 + .../include/stan/math/opencl/rev/tanh.hpp | 34 + .../stan/math/opencl/rev/tcrossprod.hpp | 34 + .../include/stan/math/opencl/rev/tgamma.hpp | 33 + .../include/stan/math/opencl/rev/to_arena.hpp | 40 + .../stan/math/opencl/rev/transpose.hpp | 27 + .../include/stan/math/opencl/rev/trunc.hpp | 33 + .../include/stan/math/opencl/rev/vari.hpp | 247 + .../include/stan/math/opencl/scalar_type.hpp | 19 + .../include/stan/math/opencl/stringify.hpp | 12 + .../stan/math/opencl/to_ref_for_opencl.hpp | 27 + .../include/stan/math/opencl/tri_inverse.hpp | 170 + .../stan/math/opencl/triangular_transpose.hpp | 56 + .../include/stan/math/opencl/value_type.hpp | 19 + .../stan/math/opencl/zeros_strict_tri.hpp | 59 + .../StanHeaders/include/stan/math/prim.hpp | 18 + .../include/stan/math/prim/arr/fun/sum.hpp | 1 + .../include/stan/math/prim/core.hpp | 14 + .../stan/math/prim/core/complex_base.hpp | 236 + .../math/prim/core/init_threadpool_tbb.hpp | 130 + .../stan/math/prim/core/operator_addition.hpp | 75 + .../stan/math/prim/core/operator_division.hpp | 75 + .../math/prim/core/operator_equal_equal.hpp | 58 + .../stan/math/prim/core/operator_minus.hpp | 25 + .../prim/core/operator_multiplication.hpp | 75 + .../math/prim/core/operator_not_equal.hpp | 60 + .../stan/math/prim/core/operator_plus.hpp | 25 + .../math/prim/core/operator_subtraction.hpp | 75 + .../include/stan/math/prim/eigen_plugins.h | 218 + .../include/stan/math/prim/err.hpp | 79 + .../math/prim/err/check_2F1_converges.hpp | 75 + .../math/prim/err/check_3F2_converges.hpp | 93 + .../stan/math/prim/err/check_bounded.hpp | 86 + .../math/prim/err/check_cholesky_factor.hpp | 41 + .../prim/err/check_cholesky_factor_corr.hpp | 46 + .../stan/math/prim/err/check_column_index.hpp | 45 + .../math/prim/err/check_consistent_size.hpp | 46 + .../math/prim/err/check_consistent_sizes.hpp | 71 + .../prim/err/check_consistent_sizes_mvt.hpp | 72 + .../stan/math/prim/err/check_corr_matrix.hpp | 60 + .../stan/math/prim/err/check_cov_matrix.hpp | 33 + .../stan/math/prim/err/check_finite.hpp | 36 + .../math/prim/err/check_flag_sundials.hpp | 54 + .../stan/math/prim/err/check_greater.hpp | 79 + .../math/prim/err/check_greater_or_equal.hpp | 79 + .../stan/math/prim/err/check_ldlt_factor.hpp | 39 + .../include/stan/math/prim/err/check_less.hpp | 79 + .../math/prim/err/check_less_or_equal.hpp | 79 + .../math/prim/err/check_lower_triangular.hpp | 46 + .../math/prim/err/check_matching_dims.hpp | 159 + .../math/prim/err/check_matching_sizes.hpp | 33 + .../math/prim/err/check_multiplicable.hpp | 37 + .../stan/math/prim/err/check_nonnegative.hpp | 31 + .../stan/math/prim/err/check_nonzero_size.hpp | 34 + .../stan/math/prim/err/check_not_nan.hpp | 34 + .../stan/math/prim/err/check_ordered.hpp | 79 + .../stan/math/prim/err/check_pos_definite.hpp | 93 + .../math/prim/err/check_pos_semidefinite.hpp | 72 + .../stan/math/prim/err/check_positive.hpp | 57 + .../math/prim/err/check_positive_finite.hpp | 30 + .../math/prim/err/check_positive_ordered.hpp | 49 + .../stan/math/prim/err/check_range.hpp | 76 + .../stan/math/prim/err/check_row_index.hpp | 40 + .../stan/math/prim/err/check_simplex.hpp | 71 + .../stan/math/prim/err/check_size_match.hpp | 70 + .../stan/math/prim/err/check_sorted.hpp | 76 + .../stan/math/prim/err/check_square.hpp | 30 + .../math/prim/err/check_std_vector_index.hpp | 41 + .../stan/math/prim/err/check_symmetric.hpp | 66 + .../stan/math/prim/err/check_unit_vector.hpp | 53 + .../stan/math/prim/err/check_vector.hpp | 47 + .../stan/math/prim/err/check_vector_index.hpp | 42 + .../math/prim/err/constraint_tolerance.hpp | 16 + .../stan/math/prim/err/domain_error.hpp | 30 + .../stan/math/prim/err/domain_error_vec.hpp | 29 + .../stan/math/prim/err/elementwise_check.hpp | 364 + .../include/stan/math/prim/err/hmm_check.hpp | 49 + .../stan/math/prim/err/invalid_argument.hpp | 56 + .../math/prim/err/invalid_argument_vec.hpp | 68 + .../stan/math/prim/err/is_cholesky_factor.hpp | 38 + .../math/prim/err/is_cholesky_factor_corr.hpp | 41 + .../stan/math/prim/err/is_column_index.hpp | 27 + .../stan/math/prim/err/is_corr_matrix.hpp | 54 + .../stan/math/prim/err/is_ldlt_factor.hpp | 28 + .../stan/math/prim/err/is_less_or_equal.hpp | 39 + .../math/prim/err/is_lower_triangular.hpp | 29 + .../stan/math/prim/err/is_mat_finite.hpp | 26 + .../stan/math/prim/err/is_matching_dims.hpp | 50 + .../stan/math/prim/err/is_matching_size.hpp | 30 + .../stan/math/prim/err/is_nonzero_size.hpp | 21 + .../include/stan/math/prim/err/is_not_nan.hpp | 34 + .../include/stan/math/prim/err/is_ordered.hpp | 30 + .../stan/math/prim/err/is_pos_definite.hpp | 78 + .../stan/math/prim/err/is_positive.hpp | 38 + .../stan/math/prim/err/is_scal_finite.hpp | 33 + .../stan/math/prim/err/is_size_match.hpp | 23 + .../include/stan/math/prim/err/is_square.hpp | 25 + .../stan/math/prim/err/is_symmetric.hpp | 46 + .../stan/math/prim/err/is_unit_vector.hpp | 39 + .../stan/math/prim/err/out_of_range.hpp | 44 + .../stan/math/prim/err/system_error.hpp | 52 + .../stan/math/prim/err/throw_domain_error.hpp | 56 + .../math/prim/err/throw_domain_error_vec.hpp | 64 + .../prim/err/validate_non_negative_index.hpp | 28 + .../include/stan/math/prim/fun.hpp | 357 + .../include/stan/math/prim/fun/Eigen.hpp | 80 + .../include/stan/math/prim/fun/F32.hpp | 93 + .../stan/math/prim/fun/LDLT_factor.hpp | 69 + .../stan/math/prim/fun/MatrixExponential.h | 217 + .../include/stan/math/prim/fun/Phi.hpp | 75 + .../include/stan/math/prim/fun/Phi_approx.hpp | 74 + .../include/stan/math/prim/fun/abs.hpp | 75 + .../stan/math/prim/fun/accumulator.hpp | 117 + .../include/stan/math/prim/fun/acos.hpp | 85 + .../include/stan/math/prim/fun/acosh.hpp | 114 + .../include/stan/math/prim/fun/add.hpp | 95 + .../include/stan/math/prim/fun/add_diag.hpp | 45 + .../stan/math/prim/fun/append_array.hpp | 82 + .../include/stan/math/prim/fun/append_col.hpp | 113 + .../include/stan/math/prim/fun/append_row.hpp | 109 + .../include/stan/math/prim/fun/arg.hpp | 26 + .../stan/math/prim/fun/array_builder.hpp | 52 + .../stan/math/prim/fun/as_array_or_scalar.hpp | 53 + .../include/stan/math/prim/fun/as_bool.hpp | 24 + .../prim/fun/as_column_vector_or_scalar.hpp | 72 + .../prim/fun/as_value_array_or_scalar.hpp | 28 + .../fun/as_value_column_array_or_scalar.hpp | 30 + .../fun/as_value_column_vector_or_scalar.hpp | 30 + .../include/stan/math/prim/fun/asin.hpp | 85 + .../include/stan/math/prim/fun/asinh.hpp | 72 + .../include/stan/math/prim/fun/assign.hpp | 153 + .../include/stan/math/prim/fun/atan.hpp | 81 + .../include/stan/math/prim/fun/atanh.hpp | 102 + .../stan/math/prim/fun/autocorrelation.hpp | 200 + .../stan/math/prim/fun/autocovariance.hpp | 127 + .../stan/math/prim/fun/bessel_first_kind.hpp | 63 + .../stan/math/prim/fun/bessel_second_kind.hpp | 65 + .../include/stan/math/prim/fun/beta.hpp | 77 + .../stan/math/prim/fun/binary_log_loss.hpp | 55 + .../prim/fun/binomial_coefficient_log.hpp | 172 + .../include/stan/math/prim/fun/block.hpp | 33 + .../stan/math/prim/fun/boost_policy.hpp | 33 + .../include/stan/math/prim/fun/cbrt.hpp | 44 + .../include/stan/math/prim/fun/ceil.hpp | 62 + .../include/stan/math/prim/fun/chol2inv.hpp | 54 + .../math/prim/fun/cholesky_corr_constrain.hpp | 79 + .../stan/math/prim/fun/cholesky_corr_free.hpp | 38 + .../stan/math/prim/fun/cholesky_decompose.hpp | 47 + .../prim/fun/cholesky_factor_constrain.hpp | 91 + .../math/prim/fun/cholesky_factor_free.hpp | 54 + .../include/stan/math/prim/fun/choose.hpp | 59 + .../include/stan/math/prim/fun/col.hpp | 36 + .../include/stan/math/prim/fun/cols.hpp | 26 + .../math/prim/fun/columns_dot_product.hpp | 36 + .../stan/math/prim/fun/columns_dot_self.hpp | 29 + .../include/stan/math/prim/fun/conj.hpp | 24 + .../include/stan/math/prim/fun/constants.hpp | 226 + .../include/stan/math/prim/fun/copysign.hpp | 81 + .../stan/math/prim/fun/corr_constrain.hpp | 54 + .../include/stan/math/prim/fun/corr_free.hpp | 35 + .../math/prim/fun/corr_matrix_constrain.hpp | 80 + .../stan/math/prim/fun/corr_matrix_free.hpp | 86 + .../include/stan/math/prim/fun/cos.hpp | 80 + .../include/stan/math/prim/fun/cosh.hpp | 79 + .../stan/math/prim/fun/cov_exp_quad.hpp | 59 + .../math/prim/fun/cov_matrix_constrain.hpp | 94 + .../prim/fun/cov_matrix_constrain_lkj.hpp | 79 + .../stan/math/prim/fun/cov_matrix_free.hpp | 64 + .../math/prim/fun/cov_matrix_free_lkj.hpp | 87 + .../include/stan/math/prim/fun/crossprod.hpp | 27 + .../stan/math/prim/fun/csr_extract_u.hpp | 57 + .../stan/math/prim/fun/csr_extract_v.hpp | 61 + .../stan/math/prim/fun/csr_extract_w.hpp | 55 + .../math/prim/fun/csr_matrix_times_vector.hpp | 112 + .../math/prim/fun/csr_to_dense_matrix.hpp | 69 + .../include/stan/math/prim/fun/csr_u_to_z.hpp | 33 + .../stan/math/prim/fun/cumulative_sum.hpp | 65 + .../stan/math/prim/fun/determinant.hpp | 29 + .../stan/math/prim/fun/diag_matrix.hpp | 28 + .../stan/math/prim/fun/diag_post_multiply.hpp | 36 + .../stan/math/prim/fun/diag_pre_multiply.hpp | 36 + .../include/stan/math/prim/fun/diagonal.hpp | 30 + .../include/stan/math/prim/fun/digamma.hpp | 83 + .../include/stan/math/prim/fun/dims.hpp | 66 + .../include/stan/math/prim/fun/distance.hpp | 57 + .../include/stan/math/prim/fun/divide.hpp | 66 + .../stan/math/prim/fun/divide_columns.hpp | 47 + .../include/stan/math/prim/fun/dot.hpp | 21 + .../stan/math/prim/fun/dot_product.hpp | 72 + .../include/stan/math/prim/fun/dot_self.hpp | 37 + .../stan/math/prim/fun/eigen_comparisons.hpp | 39 + .../stan/math/prim/fun/eigenvalues.hpp | 22 + .../stan/math/prim/fun/eigenvalues_sym.hpp | 38 + .../stan/math/prim/fun/eigenvectors.hpp | 22 + .../stan/math/prim/fun/eigenvectors_sym.hpp | 25 + .../include/stan/math/prim/fun/elt_divide.hpp | 148 + .../stan/math/prim/fun/elt_multiply.hpp | 54 + .../include/stan/math/prim/fun/erf.hpp | 43 + .../include/stan/math/prim/fun/erfc.hpp | 44 + .../include/stan/math/prim/fun/eval.hpp | 41 + .../include/stan/math/prim/fun/exp.hpp | 108 + .../include/stan/math/prim/fun/exp2.hpp | 47 + .../include/stan/math/prim/fun/expm1.hpp | 44 + .../include/stan/math/prim/fun/fabs.hpp | 63 + .../include/stan/math/prim/fun/factor_U.hpp | 91 + .../stan/math/prim/fun/factor_cov_matrix.hpp | 90 + .../stan/math/prim/fun/falling_factorial.hpp | 91 + .../include/stan/math/prim/fun/fdim.hpp | 45 + .../include/stan/math/prim/fun/fill.hpp | 66 + .../math/prim/fun/finite_diff_stepsize.hpp | 29 + .../include/stan/math/prim/fun/floor.hpp | 62 + .../include/stan/math/prim/fun/fma.hpp | 32 + .../include/stan/math/prim/fun/fmax.hpp | 43 + .../include/stan/math/prim/fun/fmin.hpp | 43 + .../include/stan/math/prim/fun/fmod.hpp | 31 + .../include/stan/math/prim/fun/gamma_p.hpp | 97 + .../include/stan/math/prim/fun/gamma_q.hpp | 75 + .../math/prim/fun/generalized_inverse.hpp | 54 + .../include/stan/math/prim/fun/get.hpp | 52 + .../include/stan/math/prim/fun/get_base1.hpp | 311 + .../stan/math/prim/fun/get_base1_lhs.hpp | 329 + .../include/stan/math/prim/fun/get_lp.hpp | 17 + .../stan/math/prim/fun/gp_dot_prod_cov.hpp | 240 + .../stan/math/prim/fun/gp_exp_quad_cov.hpp | 339 + .../stan/math/prim/fun/gp_exponential_cov.hpp | 280 + .../stan/math/prim/fun/gp_matern32_cov.hpp | 305 + .../stan/math/prim/fun/gp_matern52_cov.hpp | 295 + .../stan/math/prim/fun/gp_periodic_cov.hpp | 157 + .../include/stan/math/prim/fun/grad_2F1.hpp | 112 + .../include/stan/math/prim/fun/grad_F32.hpp | 133 + .../stan/math/prim/fun/grad_inc_beta.hpp | 42 + .../stan/math/prim/fun/grad_reg_inc_beta.hpp | 47 + .../stan/math/prim/fun/grad_reg_inc_gamma.hpp | 118 + .../prim/fun/grad_reg_lower_inc_gamma.hpp | 191 + .../include/stan/math/prim/fun/head.hpp | 56 + .../include/stan/math/prim/fun/hypot.hpp | 49 + .../include/stan/math/prim/fun/i_times.hpp | 55 + .../stan/math/prim/fun/identity_constrain.hpp | 47 + .../stan/math/prim/fun/identity_free.hpp | 28 + .../stan/math/prim/fun/identity_matrix.hpp | 25 + .../include/stan/math/prim/fun/if_else.hpp | 34 + .../include/stan/math/prim/fun/imag.hpp | 25 + .../include/stan/math/prim/fun/inc_beta.hpp | 33 + .../stan/math/prim/fun/inc_beta_dda.hpp | 103 + .../stan/math/prim/fun/inc_beta_ddb.hpp | 95 + .../stan/math/prim/fun/inc_beta_ddz.hpp | 44 + .../include/stan/math/prim/fun/initialize.hpp | 35 + .../stan/math/prim/fun/initialize_fill.hpp | 66 + .../include/stan/math/prim/fun/int_step.hpp | 33 + .../include/stan/math/prim/fun/inv.hpp | 61 + .../include/stan/math/prim/fun/inv_Phi.hpp | 113 + .../stan/math/prim/fun/inv_cloglog.hpp | 100 + .../include/stan/math/prim/fun/inv_logit.hpp | 97 + .../include/stan/math/prim/fun/inv_sqrt.hpp | 64 + .../include/stan/math/prim/fun/inv_square.hpp | 45 + .../include/stan/math/prim/fun/inverse.hpp | 38 + .../stan/math/prim/fun/inverse_softmax.hpp | 44 + .../stan/math/prim/fun/inverse_spd.hpp | 52 + .../include/stan/math/prim/fun/is_any_nan.hpp | 42 + .../include/stan/math/prim/fun/is_inf.hpp | 23 + .../include/stan/math/prim/fun/is_integer.hpp | 26 + .../include/stan/math/prim/fun/is_nan.hpp | 31 + .../math/prim/fun/is_nonpositive_integer.hpp | 26 + .../stan/math/prim/fun/is_uninitialized.hpp | 25 + .../include/stan/math/prim/fun/isfinite.hpp | 29 + .../include/stan/math/prim/fun/isinf.hpp | 30 + .../include/stan/math/prim/fun/isnan.hpp | 28 + .../include/stan/math/prim/fun/isnormal.hpp | 29 + .../include/stan/math/prim/fun/lambert_w.hpp | 103 + .../stan/math/prim/fun/lb_constrain.hpp | 77 + .../include/stan/math/prim/fun/lb_free.hpp | 41 + .../include/stan/math/prim/fun/lbeta.hpp | 138 + .../include/stan/math/prim/fun/ldexp.hpp | 47 + .../include/stan/math/prim/fun/lgamma.hpp | 126 + .../stan/math/prim/fun/lgamma_stirling.hpp | 33 + .../math/prim/fun/lgamma_stirling_diff.hpp | 82 + .../stan/math/prim/fun/linspaced_array.hpp | 44 + .../math/prim/fun/linspaced_int_array.hpp | 48 + .../math/prim/fun/linspaced_row_vector.hpp | 38 + .../stan/math/prim/fun/linspaced_vector.hpp | 38 + .../include/stan/math/prim/fun/lmgamma.hpp | 80 + .../include/stan/math/prim/fun/log.hpp | 93 + .../include/stan/math/prim/fun/log10.hpp | 78 + .../include/stan/math/prim/fun/log1m.hpp | 80 + .../include/stan/math/prim/fun/log1m_exp.hpp | 89 + .../stan/math/prim/fun/log1m_inv_logit.hpp | 93 + .../include/stan/math/prim/fun/log1p.hpp | 88 + .../include/stan/math/prim/fun/log1p_exp.hpp | 84 + .../include/stan/math/prim/fun/log2.hpp | 56 + .../stan/math/prim/fun/log_determinant.hpp | 33 + .../math/prim/fun/log_determinant_ldlt.hpp | 28 + .../math/prim/fun/log_determinant_spd.hpp | 37 + .../stan/math/prim/fun/log_diff_exp.hpp | 77 + .../math/prim/fun/log_falling_factorial.hpp | 83 + .../stan/math/prim/fun/log_inv_logit.hpp | 90 + .../stan/math/prim/fun/log_inv_logit_diff.hpp | 60 + .../include/stan/math/prim/fun/log_mix.hpp | 204 + .../fun/log_modified_bessel_first_kind.hpp | 243 + .../math/prim/fun/log_rising_factorial.hpp | 82 + .../stan/math/prim/fun/log_softmax.hpp | 72 + .../stan/math/prim/fun/log_sum_exp.hpp | 97 + .../include/stan/math/prim/fun/logb.hpp | 31 + .../stan/math/prim/fun/logical_and.hpp | 37 + .../include/stan/math/prim/fun/logical_eq.hpp | 26 + .../include/stan/math/prim/fun/logical_gt.hpp | 25 + .../stan/math/prim/fun/logical_gte.hpp | 25 + .../include/stan/math/prim/fun/logical_lt.hpp | 25 + .../stan/math/prim/fun/logical_lte.hpp | 25 + .../stan/math/prim/fun/logical_negation.hpp | 23 + .../stan/math/prim/fun/logical_neq.hpp | 25 + .../include/stan/math/prim/fun/logical_or.hpp | 36 + .../include/stan/math/prim/fun/logit.hpp | 129 + .../stan/math/prim/fun/lub_constrain.hpp | 125 + .../include/stan/math/prim/fun/lub_free.hpp | 59 + .../include/stan/math/prim/fun/make_nu.hpp | 44 + .../include/stan/math/prim/fun/matrix_exp.hpp | 48 + .../stan/math/prim/fun/matrix_exp_2x2.hpp | 56 + .../prim/fun/matrix_exp_action_handler.hpp | 130 + .../math/prim/fun/matrix_exp_multiply.hpp | 37 + .../stan/math/prim/fun/matrix_exp_pade.hpp | 51 + .../stan/math/prim/fun/matrix_power.hpp | 58 + .../include/stan/math/prim/fun/max.hpp | 40 + .../include/stan/math/prim/fun/max_size.hpp | 25 + .../stan/math/prim/fun/max_size_mvt.hpp | 30 + .../stan/math/prim/fun/mdivide_left.hpp | 44 + .../stan/math/prim/fun/mdivide_left_ldlt.hpp | 45 + .../stan/math/prim/fun/mdivide_left_spd.hpp | 54 + .../stan/math/prim/fun/mdivide_left_tri.hpp | 70 + .../math/prim/fun/mdivide_left_tri_low.hpp | 57 + .../stan/math/prim/fun/mdivide_right.hpp | 49 + .../stan/math/prim/fun/mdivide_right_ldlt.hpp | 65 + .../stan/math/prim/fun/mdivide_right_spd.hpp | 46 + .../stan/math/prim/fun/mdivide_right_tri.hpp | 59 + .../math/prim/fun/mdivide_right_tri_low.hpp | 36 + .../include/stan/math/prim/fun/mean.hpp | 31 + .../include/stan/math/prim/fun/min.hpp | 39 + .../include/stan/math/prim/fun/minus.hpp | 24 + .../prim/fun/modified_bessel_first_kind.hpp | 75 + .../prim/fun/modified_bessel_second_kind.hpp | 67 + .../include/stan/math/prim/fun/modulus.hpp | 21 + .../include/stan/math/prim/fun/multiply.hpp | 121 + .../stan/math/prim/fun/multiply_log.hpp | 78 + .../fun/multiply_lower_tri_self_transpose.hpp | 47 + .../include/stan/math/prim/fun/norm.hpp | 26 + .../stan/math/prim/fun/num_elements.hpp | 56 + .../prim/fun/offset_multiplier_constrain.hpp | 100 + .../math/prim/fun/offset_multiplier_free.hpp | 54 + .../stan/math/prim/fun/one_hot_array.hpp | 33 + .../stan/math/prim/fun/one_hot_int_array.hpp | 33 + .../stan/math/prim/fun/one_hot_row_vector.hpp | 33 + .../stan/math/prim/fun/one_hot_vector.hpp | 33 + .../include/stan/math/prim/fun/ones_array.hpp | 25 + .../stan/math/prim/fun/ones_int_array.hpp | 25 + .../stan/math/prim/fun/ones_row_vector.hpp | 25 + .../stan/math/prim/fun/ones_vector.hpp | 25 + .../stan/math/prim/fun/ordered_constrain.hpp | 64 + .../stan/math/prim/fun/ordered_free.hpp | 47 + .../include/stan/math/prim/fun/owens_t.hpp | 79 + .../include/stan/math/prim/fun/plus.hpp | 24 + .../prim/fun/poisson_binomial_log_probs.hpp | 71 + .../include/stan/math/prim/fun/polar.hpp | 56 + .../stan/math/prim/fun/positive_constrain.hpp | 52 + .../stan/math/prim/fun/positive_free.hpp | 37 + .../prim/fun/positive_ordered_constrain.hpp | 61 + .../math/prim/fun/positive_ordered_free.hpp | 48 + .../include/stan/math/prim/fun/pow.hpp | 50 + .../stan/math/prim/fun/primitive_value.hpp | 50 + .../stan/math/prim/fun/prob_constrain.hpp | 61 + .../include/stan/math/prim/fun/prob_free.hpp | 35 + .../include/stan/math/prim/fun/prod.hpp | 59 + .../include/stan/math/prim/fun/proj.hpp | 30 + .../stan/math/prim/fun/promote_elements.hpp | 151 + .../stan/math/prim/fun/promote_scalar.hpp | 122 + .../stan/math/prim/fun/pseudo_eigenvalues.hpp | 21 + .../math/prim/fun/pseudo_eigenvectors.hpp | 22 + .../include/stan/math/prim/fun/qr_Q.hpp | 40 + .../include/stan/math/prim/fun/qr_R.hpp | 45 + .../include/stan/math/prim/fun/qr_thin_Q.hpp | 39 + .../include/stan/math/prim/fun/qr_thin_R.hpp | 42 + .../include/stan/math/prim/fun/quad_form.hpp | 75 + .../stan/math/prim/fun/quad_form_diag.hpp | 37 + .../stan/math/prim/fun/quad_form_sym.hpp | 72 + .../include/stan/math/prim/fun/rank.hpp | 31 + .../stan/math/prim/fun/read_corr_L.hpp | 140 + .../stan/math/prim/fun/read_corr_matrix.hpp | 67 + .../include/stan/math/prim/fun/read_cov_L.hpp | 47 + .../stan/math/prim/fun/read_cov_matrix.hpp | 62 + .../include/stan/math/prim/fun/real.hpp | 25 + .../include/stan/math/prim/fun/rep_array.hpp | 42 + .../include/stan/math/prim/fun/rep_matrix.hpp | 46 + .../stan/math/prim/fun/rep_row_vector.hpp | 24 + .../include/stan/math/prim/fun/rep_vector.hpp | 23 + .../include/stan/math/prim/fun/resize.hpp | 50 + .../include/stan/math/prim/fun/reverse.hpp | 45 + .../stan/math/prim/fun/rising_factorial.hpp | 89 + .../include/stan/math/prim/fun/round.hpp | 61 + .../include/stan/math/prim/fun/row.hpp | 41 + .../include/stan/math/prim/fun/rows.hpp | 26 + .../stan/math/prim/fun/rows_dot_product.hpp | 36 + .../stan/math/prim/fun/rows_dot_self.hpp | 27 + .../stan/math/prim/fun/scalar_seq_view.hpp | 177 + .../include/stan/math/prim/fun/scalbn.hpp | 19 + .../prim/fun/scale_matrix_exp_multiply.hpp | 72 + .../include/stan/math/prim/fun/scaled_add.hpp | 21 + .../include/stan/math/prim/fun/sd.hpp | 43 + .../include/stan/math/prim/fun/segment.hpp | 48 + .../include/stan/math/prim/fun/sign.hpp | 49 + .../include/stan/math/prim/fun/signbit.hpp | 29 + .../stan/math/prim/fun/simplex_constrain.hpp | 86 + .../stan/math/prim/fun/simplex_free.hpp | 51 + .../include/stan/math/prim/fun/sin.hpp | 78 + .../stan/math/prim/fun/singular_values.hpp | 35 + .../include/stan/math/prim/fun/sinh.hpp | 77 + .../include/stan/math/prim/fun/size.hpp | 69 + .../include/stan/math/prim/fun/size_mvt.hpp | 40 + .../include/stan/math/prim/fun/size_zero.hpp | 38 + .../include/stan/math/prim/fun/softmax.hpp | 66 + .../include/stan/math/prim/fun/sort_asc.hpp | 48 + .../include/stan/math/prim/fun/sort_desc.hpp | 50 + .../stan/math/prim/fun/sort_indices.hpp | 80 + .../stan/math/prim/fun/sort_indices_asc.hpp | 28 + .../stan/math/prim/fun/sort_indices_desc.hpp | 28 + .../include/stan/math/prim/fun/sqrt.hpp | 78 + .../include/stan/math/prim/fun/square.hpp | 77 + .../stan/math/prim/fun/squared_distance.hpp | 60 + .../include/stan/math/prim/fun/stan_print.hpp | 63 + .../include/stan/math/prim/fun/step.hpp | 36 + .../include/stan/math/prim/fun/sub_col.hpp | 39 + .../include/stan/math/prim/fun/sub_row.hpp | 39 + .../include/stan/math/prim/fun/subtract.hpp | 101 + .../include/stan/math/prim/fun/sum.hpp | 53 + .../include/stan/math/prim/fun/svd_U.hpp | 32 + .../include/stan/math/prim/fun/svd_V.hpp | 32 + .../prim/fun/symmetrize_from_lower_tri.hpp | 28 + .../include/stan/math/prim/fun/tail.hpp | 57 + .../include/stan/math/prim/fun/tan.hpp | 79 + .../include/stan/math/prim/fun/tanh.hpp | 83 + .../include/stan/math/prim/fun/tcrossprod.hpp | 40 + .../include/stan/math/prim/fun/tgamma.hpp | 58 + .../stan/math/prim/fun/to_array_1d.hpp | 51 + .../stan/math/prim/fun/to_array_2d.hpp | 33 + .../include/stan/math/prim/fun/to_matrix.hpp | 218 + .../include/stan/math/prim/fun/to_ref.hpp | 49 + .../stan/math/prim/fun/to_row_vector.hpp | 46 + .../include/stan/math/prim/fun/to_vector.hpp | 46 + .../include/stan/math/prim/fun/trace.hpp | 29 + .../prim/fun/trace_gen_inv_quad_form_ldlt.hpp | 84 + .../math/prim/fun/trace_gen_quad_form.hpp | 79 + .../prim/fun/trace_inv_quad_form_ldlt.hpp | 42 + .../stan/math/prim/fun/trace_quad_form.hpp | 37 + .../include/stan/math/prim/fun/transpose.hpp | 27 + .../include/stan/math/prim/fun/trigamma.hpp | 168 + .../include/stan/math/prim/fun/trunc.hpp | 49 + .../include/stan/math/prim/fun/typedefs.hpp | 34 + .../stan/math/prim/fun/ub_constrain.hpp | 84 + .../include/stan/math/prim/fun/ub_free.hpp | 48 + .../stan/math/prim/fun/uniform_simplex.hpp | 26 + .../math/prim/fun/unit_vector_constrain.hpp | 88 + .../stan/math/prim/fun/unit_vector_free.hpp | 34 + .../stan/math/prim/fun/unitspaced_array.hpp | 44 + .../include/stan/math/prim/fun/value_of.hpp | 66 + .../stan/math/prim/fun/value_of_rec.hpp | 135 + .../include/stan/math/prim/fun/variance.hpp | 54 + .../include/stan/math/prim/fun/vec_concat.hpp | 65 + .../stan/math/prim/fun/vector_seq_view.hpp | 98 + .../math/prim/fun/welford_covar_estimator.hpp | 49 + .../math/prim/fun/welford_var_estimator.hpp | 49 + .../stan/math/prim/fun/zeros_array.hpp | 25 + .../stan/math/prim/fun/zeros_int_array.hpp | 25 + .../stan/math/prim/fun/zeros_row_vector.hpp | 25 + .../stan/math/prim/fun/zeros_vector.hpp | 25 + .../include/stan/math/prim/functor.hpp | 31 + .../include/stan/math/prim/functor/apply.hpp | 53 + .../math/prim/functor/apply_scalar_binary.hpp | 424 + .../math/prim/functor/apply_scalar_unary.hpp | 188 + .../math/prim/functor/apply_vector_unary.hpp | 266 + .../math/prim/functor/broadcast_array.hpp | 91 + .../math/prim/functor/coupled_ode_system.hpp | 119 + .../prim/functor/finite_diff_gradient.hpp | 80 + .../functor/finite_diff_gradient_auto.hpp | 87 + .../math/prim/functor/finite_diff_hessian.hpp | 75 + .../prim/functor/finite_diff_hessian_auto.hpp | 84 + .../functor/finite_diff_hessian_helper.hpp | 50 + .../stan/math/prim/functor/for_each.hpp | 77 + .../stan/math/prim/functor/integrate_1d.hpp | 211 + .../math/prim/functor/integrate_ode_rk45.hpp | 41 + ...grate_ode_std_vector_interface_adapter.hpp | 42 + .../stan/math/prim/functor/map_rect.hpp | 192 + .../math/prim/functor/map_rect_combine.hpp | 100 + .../math/prim/functor/map_rect_concurrent.hpp | 27 + .../stan/math/prim/functor/map_rect_mpi.hpp | 77 + .../math/prim/functor/map_rect_reduce.hpp | 55 + .../stan/math/prim/functor/mpi_cluster.hpp | 249 + .../math/prim/functor/mpi_cluster_inst.cpp | 9 + .../stan/math/prim/functor/mpi_command.hpp | 55 + .../prim/functor/mpi_distributed_apply.hpp | 51 + .../math/prim/functor/mpi_parallel_call.hpp | 588 + .../stan/math/prim/functor/ode_rk45.hpp | 259 + .../prim/functor/ode_store_sensitivities.hpp | 45 + .../prim/functor/operands_and_partials.hpp | 212 + .../stan/math/prim/functor/reduce_sum.hpp | 224 + .../math/prim/functor/reduce_sum_static.hpp | 69 + .../include/stan/math/prim/mat.hpp | 2 + .../math/prim/mat/err/check_ldlt_factor.hpp | 1 + .../math/prim/mat/err/check_symmetric.hpp | 1 + .../include/stan/math/prim/mat/fun/Eigen.hpp | 1 + .../stan/math/prim/mat/fun/LDLT_factor.hpp | 1 + .../math/prim/mat/fun/autocorrelation.hpp | 1 + .../stan/math/prim/mat/fun/autocovariance.hpp | 1 + .../stan/math/prim/mat/fun/csr_extract_u.hpp | 1 + .../stan/math/prim/mat/fun/csr_extract_v.hpp | 1 + .../stan/math/prim/mat/fun/csr_extract_w.hpp | 1 + .../prim/mat/fun/log_determinant_ldlt.hpp | 1 + .../include/stan/math/prim/mat/fun/mean.hpp | 1 + .../include/stan/math/prim/mat/fun/sum.hpp | 1 + .../prim/mat/fun/trace_inv_quad_form_ldlt.hpp | 1 + .../stan/math/prim/mat/fun/variance.hpp | 1 + .../include/stan/math/prim/meta.hpp | 235 + .../include/stan/math/prim/prob.hpp | 352 + .../math/prim/prob/bernoulli_ccdf_log.hpp | 19 + .../stan/math/prim/prob/bernoulli_cdf.hpp | 84 + .../stan/math/prim/prob/bernoulli_cdf_log.hpp | 20 + .../stan/math/prim/prob/bernoulli_lccdf.hpp | 81 + .../stan/math/prim/prob/bernoulli_lcdf.hpp | 83 + .../stan/math/prim/prob/bernoulli_log.hpp | 28 + .../prim/prob/bernoulli_logit_glm_log.hpp | 31 + .../prim/prob/bernoulli_logit_glm_lpmf.hpp | 176 + .../prim/prob/bernoulli_logit_glm_rng.hpp | 88 + .../math/prim/prob/bernoulli_logit_log.hpp | 29 + .../math/prim/prob/bernoulli_logit_lpmf.hpp | 101 + .../math/prim/prob/bernoulli_logit_rng.hpp | 53 + .../stan/math/prim/prob/bernoulli_lpmf.hpp | 120 + .../stan/math/prim/prob/bernoulli_rng.hpp | 52 + .../math/prim/prob/beta_binomial_ccdf_log.hpp | 23 + .../stan/math/prim/prob/beta_binomial_cdf.hpp | 151 + .../math/prim/prob/beta_binomial_cdf_log.hpp | 23 + .../math/prim/prob/beta_binomial_lccdf.hpp | 138 + .../math/prim/prob/beta_binomial_lcdf.hpp | 142 + .../stan/math/prim/prob/beta_binomial_log.hpp | 34 + .../math/prim/prob/beta_binomial_lpmf.hpp | 177 + .../stan/math/prim/prob/beta_binomial_rng.hpp | 57 + .../stan/math/prim/prob/beta_ccdf_log.hpp | 21 + .../include/stan/math/prim/prob/beta_cdf.hpp | 160 + .../stan/math/prim/prob/beta_cdf_log.hpp | 21 + .../stan/math/prim/prob/beta_lccdf.hpp | 134 + .../include/stan/math/prim/prob/beta_lcdf.hpp | 135 + .../include/stan/math/prim/prob/beta_log.hpp | 31 + .../include/stan/math/prim/prob/beta_lpdf.hpp | 142 + .../prim/prob/beta_proportion_ccdf_log.hpp | 21 + .../prim/prob/beta_proportion_cdf_log.hpp | 22 + .../math/prim/prob/beta_proportion_lccdf.hpp | 145 + .../math/prim/prob/beta_proportion_lcdf.hpp | 146 + .../math/prim/prob/beta_proportion_log.hpp | 31 + .../math/prim/prob/beta_proportion_lpdf.hpp | 145 + .../math/prim/prob/beta_proportion_rng.hpp | 64 + .../include/stan/math/prim/prob/beta_rng.hpp | 89 + .../stan/math/prim/prob/binomial_ccdf_log.hpp | 21 + .../stan/math/prim/prob/binomial_cdf.hpp | 111 + .../stan/math/prim/prob/binomial_cdf_log.hpp | 21 + .../stan/math/prim/prob/binomial_lccdf.hpp | 109 + .../stan/math/prim/prob/binomial_lcdf.hpp | 108 + .../stan/math/prim/prob/binomial_log.hpp | 30 + .../math/prim/prob/binomial_logit_log.hpp | 30 + .../math/prim/prob/binomial_logit_lpmf.hpp | 113 + .../stan/math/prim/prob/binomial_lpmf.hpp | 146 + .../stan/math/prim/prob/binomial_rng.hpp | 63 + .../stan/math/prim/prob/categorical_log.hpp | 32 + .../prim/prob/categorical_logit_glm_lpmf.hpp | 204 + .../math/prim/prob/categorical_logit_log.hpp | 32 + .../math/prim/prob/categorical_logit_lpmf.hpp | 73 + .../math/prim/prob/categorical_logit_rng.hpp | 48 + .../stan/math/prim/prob/categorical_lpmf.hpp | 69 + .../stan/math/prim/prob/categorical_rng.hpp | 37 + .../stan/math/prim/prob/cauchy_ccdf_log.hpp | 22 + .../stan/math/prim/prob/cauchy_cdf.hpp | 122 + .../stan/math/prim/prob/cauchy_cdf_log.hpp | 21 + .../stan/math/prim/prob/cauchy_lccdf.hpp | 92 + .../stan/math/prim/prob/cauchy_lcdf.hpp | 93 + .../stan/math/prim/prob/cauchy_log.hpp | 47 + .../stan/math/prim/prob/cauchy_lpdf.hpp | 136 + .../stan/math/prim/prob/cauchy_rng.hpp | 63 + .../math/prim/prob/chi_square_ccdf_log.hpp | 20 + .../stan/math/prim/prob/chi_square_cdf.hpp | 128 + .../math/prim/prob/chi_square_cdf_log.hpp | 20 + .../stan/math/prim/prob/chi_square_lccdf.hpp | 119 + .../stan/math/prim/prob/chi_square_lcdf.hpp | 119 + .../stan/math/prim/prob/chi_square_log.hpp | 46 + .../stan/math/prim/prob/chi_square_lpdf.hpp | 116 + .../stan/math/prim/prob/chi_square_rng.hpp | 52 + .../stan/math/prim/prob/dirichlet_log.hpp | 47 + .../stan/math/prim/prob/dirichlet_lpdf.hpp | 136 + .../stan/math/prim/prob/dirichlet_lpmf.hpp | 27 + .../stan/math/prim/prob/dirichlet_rng.hpp | 79 + .../prim/prob/discrete_range_ccdf_log.hpp | 20 + .../math/prim/prob/discrete_range_cdf.hpp | 75 + .../math/prim/prob/discrete_range_cdf_log.hpp | 20 + .../math/prim/prob/discrete_range_lccdf.hpp | 75 + .../math/prim/prob/discrete_range_lcdf.hpp | 75 + .../math/prim/prob/discrete_range_log.hpp | 29 + .../math/prim/prob/discrete_range_lpmf.hpp | 100 + .../math/prim/prob/discrete_range_rng.hpp | 61 + .../prim/prob/double_exponential_ccdf_log.hpp | 21 + .../math/prim/prob/double_exponential_cdf.hpp | 127 + .../prim/prob/double_exponential_cdf_log.hpp | 20 + .../prim/prob/double_exponential_lccdf.hpp | 103 + .../prim/prob/double_exponential_lcdf.hpp | 101 + .../math/prim/prob/double_exponential_log.hpp | 30 + .../prim/prob/double_exponential_lpdf.hpp | 125 + .../math/prim/prob/double_exponential_rng.hpp | 67 + .../prim/prob/exp_mod_normal_ccdf_log.hpp | 23 + .../math/prim/prob/exp_mod_normal_cdf.hpp | 156 + .../math/prim/prob/exp_mod_normal_cdf_log.hpp | 23 + .../math/prim/prob/exp_mod_normal_lccdf.hpp | 146 + .../math/prim/prob/exp_mod_normal_lcdf.hpp | 145 + .../math/prim/prob/exp_mod_normal_log.hpp | 35 + .../math/prim/prob/exp_mod_normal_lpdf.hpp | 138 + .../math/prim/prob/exp_mod_normal_rng.hpp | 72 + .../math/prim/prob/exponential_ccdf_log.hpp | 21 + .../stan/math/prim/prob/exponential_cdf.hpp | 88 + .../math/prim/prob/exponential_cdf_log.hpp | 21 + .../stan/math/prim/prob/exponential_lccdf.hpp | 82 + .../stan/math/prim/prob/exponential_lcdf.hpp | 69 + .../stan/math/prim/prob/exponential_log.hpp | 30 + .../stan/math/prim/prob/exponential_lpdf.hpp | 118 + .../stan/math/prim/prob/exponential_rng.hpp | 52 + .../stan/math/prim/prob/frechet_ccdf_log.hpp | 22 + .../stan/math/prim/prob/frechet_cdf.hpp | 97 + .../stan/math/prim/prob/frechet_cdf_log.hpp | 22 + .../stan/math/prim/prob/frechet_lccdf.hpp | 80 + .../stan/math/prim/prob/frechet_lcdf.hpp | 77 + .../stan/math/prim/prob/frechet_log.hpp | 32 + .../stan/math/prim/prob/frechet_lpdf.hpp | 116 + .../stan/math/prim/prob/frechet_rng.hpp | 62 + .../stan/math/prim/prob/gamma_ccdf_log.hpp | 22 + .../include/stan/math/prim/prob/gamma_cdf.hpp | 149 + .../stan/math/prim/prob/gamma_cdf_log.hpp | 21 + .../stan/math/prim/prob/gamma_lccdf.hpp | 117 + .../stan/math/prim/prob/gamma_lcdf.hpp | 116 + .../include/stan/math/prim/prob/gamma_log.hpp | 53 + .../stan/math/prim/prob/gamma_lpdf.hpp | 137 + .../include/stan/math/prim/prob/gamma_rng.hpp | 65 + .../math/prim/prob/gaussian_dlm_obs_log.hpp | 34 + .../math/prim/prob/gaussian_dlm_obs_lpdf.hpp | 296 + .../math/prim/prob/gaussian_dlm_obs_rng.hpp | 152 + .../stan/math/prim/prob/gumbel_ccdf_log.hpp | 22 + .../stan/math/prim/prob/gumbel_cdf.hpp | 113 + .../stan/math/prim/prob/gumbel_cdf_log.hpp | 21 + .../stan/math/prim/prob/gumbel_lccdf.hpp | 105 + .../stan/math/prim/prob/gumbel_lcdf.hpp | 100 + .../stan/math/prim/prob/gumbel_log.hpp | 31 + .../stan/math/prim/prob/gumbel_lpdf.hpp | 120 + .../stan/math/prim/prob/gumbel_rng.hpp | 63 + .../math/prim/prob/hmm_hidden_state_prob.hpp | 86 + .../stan/math/prim/prob/hmm_latent_rng.hpp | 100 + .../stan/math/prim/prob/hmm_marginal.hpp | 185 + .../math/prim/prob/hypergeometric_log.hpp | 30 + .../math/prim/prob/hypergeometric_lpmf.hpp | 66 + .../math/prim/prob/hypergeometric_rng.hpp | 41 + .../prim/prob/inv_chi_square_ccdf_log.hpp | 21 + .../math/prim/prob/inv_chi_square_cdf.hpp | 129 + .../math/prim/prob/inv_chi_square_cdf_log.hpp | 21 + .../math/prim/prob/inv_chi_square_lccdf.hpp | 120 + .../math/prim/prob/inv_chi_square_lcdf.hpp | 120 + .../math/prim/prob/inv_chi_square_log.hpp | 48 + .../math/prim/prob/inv_chi_square_lpdf.hpp | 115 + .../math/prim/prob/inv_chi_square_rng.hpp | 52 + .../math/prim/prob/inv_gamma_ccdf_log.hpp | 22 + .../stan/math/prim/prob/inv_gamma_cdf.hpp | 151 + .../stan/math/prim/prob/inv_gamma_cdf_log.hpp | 22 + .../stan/math/prim/prob/inv_gamma_lccdf.hpp | 121 + .../stan/math/prim/prob/inv_gamma_lcdf.hpp | 121 + .../stan/math/prim/prob/inv_gamma_log.hpp | 47 + .../stan/math/prim/prob/inv_gamma_lpdf.hpp | 130 + .../stan/math/prim/prob/inv_gamma_rng.hpp | 64 + .../stan/math/prim/prob/inv_wishart_log.hpp | 50 + .../stan/math/prim/prob/inv_wishart_lpdf.hpp | 100 + .../stan/math/prim/prob/inv_wishart_rng.hpp | 32 + .../math/prim/prob/lkj_corr_cholesky_log.hpp | 31 + .../math/prim/prob/lkj_corr_cholesky_lpdf.hpp | 63 + .../math/prim/prob/lkj_corr_cholesky_rng.hpp | 32 + .../stan/math/prim/prob/lkj_corr_log.hpp | 30 + .../stan/math/prim/prob/lkj_corr_lpdf.hpp | 87 + .../stan/math/prim/prob/lkj_corr_rng.hpp | 34 + .../stan/math/prim/prob/lkj_cov_log.hpp | 32 + .../stan/math/prim/prob/lkj_cov_lpdf.hpp | 107 + .../stan/math/prim/prob/logistic_ccdf_log.hpp | 22 + .../stan/math/prim/prob/logistic_cdf.hpp | 112 + .../stan/math/prim/prob/logistic_cdf_log.hpp | 22 + .../stan/math/prim/prob/logistic_lccdf.hpp | 96 + .../stan/math/prim/prob/logistic_lcdf.hpp | 96 + .../stan/math/prim/prob/logistic_log.hpp | 31 + .../stan/math/prim/prob/logistic_lpdf.hpp | 110 + .../stan/math/prim/prob/logistic_rng.hpp | 64 + .../math/prim/prob/lognormal_ccdf_log.hpp | 22 + .../stan/math/prim/prob/lognormal_cdf.hpp | 97 + .../stan/math/prim/prob/lognormal_cdf_log.hpp | 22 + .../stan/math/prim/prob/lognormal_lccdf.hpp | 99 + .../stan/math/prim/prob/lognormal_lcdf.hpp | 97 + .../stan/math/prim/prob/lognormal_log.hpp | 31 + .../stan/math/prim/prob/lognormal_lpdf.hpp | 119 + .../stan/math/prim/prob/lognormal_rng.hpp | 63 + .../math/prim/prob/matrix_normal_prec_log.hpp | 52 + .../prim/prob/matrix_normal_prec_lpdf.hpp | 91 + .../math/prim/prob/matrix_normal_prec_rng.hpp | 117 + .../math/prim/prob/multi_gp_cholesky_log.hpp | 52 + .../math/prim/prob/multi_gp_cholesky_lpdf.hpp | 95 + .../stan/math/prim/prob/multi_gp_log.hpp | 51 + .../stan/math/prim/prob/multi_gp_lpdf.hpp | 93 + .../prim/prob/multi_normal_cholesky_log.hpp | 46 + .../prim/prob/multi_normal_cholesky_lpdf.hpp | 172 + .../prim/prob/multi_normal_cholesky_rng.hpp | 79 + .../stan/math/prim/prob/multi_normal_log.hpp | 31 + .../stan/math/prim/prob/multi_normal_lpdf.hpp | 113 + .../math/prim/prob/multi_normal_prec_log.hpp | 31 + .../math/prim/prob/multi_normal_prec_lpdf.hpp | 113 + .../math/prim/prob/multi_normal_prec_rng.hpp | 88 + .../stan/math/prim/prob/multi_normal_rng.hpp | 85 + .../math/prim/prob/multi_student_t_log.hpp | 37 + .../math/prim/prob/multi_student_t_lpdf.hpp | 149 + .../math/prim/prob/multi_student_t_rng.hpp | 94 + .../stan/math/prim/prob/multinomial_log.hpp | 32 + .../math/prim/prob/multinomial_logit_log.hpp | 33 + .../math/prim/prob/multinomial_logit_lpmf.hpp | 62 + .../math/prim/prob/multinomial_logit_rng.hpp | 54 + .../stan/math/prim/prob/multinomial_lpmf.hpp | 52 + .../stan/math/prim/prob/multinomial_rng.hpp | 38 + .../prim/prob/neg_binomial_2_ccdf_log.hpp | 21 + .../math/prim/prob/neg_binomial_2_cdf.hpp | 133 + .../math/prim/prob/neg_binomial_2_cdf_log.hpp | 21 + .../math/prim/prob/neg_binomial_2_lccdf.hpp | 50 + .../math/prim/prob/neg_binomial_2_lcdf.hpp | 69 + .../math/prim/prob/neg_binomial_2_log.hpp | 30 + .../prim/prob/neg_binomial_2_log_glm_log.hpp | 34 + .../prim/prob/neg_binomial_2_log_glm_lpmf.hpp | 254 + .../math/prim/prob/neg_binomial_2_log_log.hpp | 31 + .../prim/prob/neg_binomial_2_log_lpmf.hpp | 142 + .../math/prim/prob/neg_binomial_2_log_rng.hpp | 87 + .../math/prim/prob/neg_binomial_2_lpmf.hpp | 127 + .../math/prim/prob/neg_binomial_2_rng.hpp | 85 + .../math/prim/prob/neg_binomial_ccdf_log.hpp | 21 + .../stan/math/prim/prob/neg_binomial_cdf.hpp | 129 + .../math/prim/prob/neg_binomial_cdf_log.hpp | 21 + .../math/prim/prob/neg_binomial_lccdf.hpp | 130 + .../stan/math/prim/prob/neg_binomial_lcdf.hpp | 130 + .../stan/math/prim/prob/neg_binomial_log.hpp | 31 + .../stan/math/prim/prob/neg_binomial_lpmf.hpp | 132 + .../stan/math/prim/prob/neg_binomial_rng.hpp | 77 + .../stan/math/prim/prob/normal_ccdf_log.hpp | 21 + .../stan/math/prim/prob/normal_cdf.hpp | 124 + .../stan/math/prim/prob/normal_cdf_log.hpp | 22 + .../stan/math/prim/prob/normal_id_glm_log.hpp | 34 + .../math/prim/prob/normal_id_glm_lpdf.hpp | 224 + .../stan/math/prim/prob/normal_lccdf.hpp | 98 + .../stan/math/prim/prob/normal_lcdf.hpp | 232 + .../stan/math/prim/prob/normal_log.hpp | 50 + .../stan/math/prim/prob/normal_lpdf.hpp | 125 + .../stan/math/prim/prob/normal_rng.hpp | 63 + .../math/prim/prob/normal_sufficient_log.hpp | 36 + .../math/prim/prob/normal_sufficient_lpdf.hpp | 175 + .../prim/prob/ordered_logistic_glm_lpmf.hpp | 216 + .../math/prim/prob/ordered_logistic_log.hpp | 58 + .../math/prim/prob/ordered_logistic_lpmf.hpp | 209 + .../math/prim/prob/ordered_logistic_rng.hpp | 36 + .../math/prim/prob/ordered_probit_log.hpp | 59 + .../math/prim/prob/ordered_probit_lpmf.hpp | 111 + .../math/prim/prob/ordered_probit_rng.hpp | 32 + .../stan/math/prim/prob/pareto_ccdf_log.hpp | 22 + .../stan/math/prim/prob/pareto_cdf.hpp | 111 + .../stan/math/prim/prob/pareto_cdf_log.hpp | 22 + .../stan/math/prim/prob/pareto_lccdf.hpp | 110 + .../stan/math/prim/prob/pareto_lcdf.hpp | 106 + .../stan/math/prim/prob/pareto_log.hpp | 32 + .../stan/math/prim/prob/pareto_lpdf.hpp | 111 + .../stan/math/prim/prob/pareto_rng.hpp | 63 + .../math/prim/prob/pareto_type_2_ccdf_log.hpp | 23 + .../stan/math/prim/prob/pareto_type_2_cdf.hpp | 107 + .../math/prim/prob/pareto_type_2_cdf_log.hpp | 22 + .../math/prim/prob/pareto_type_2_lccdf.hpp | 110 + .../math/prim/prob/pareto_type_2_lcdf.hpp | 107 + .../stan/math/prim/prob/pareto_type_2_log.hpp | 34 + .../math/prim/prob/pareto_type_2_lpdf.hpp | 128 + .../stan/math/prim/prob/pareto_type_2_rng.hpp | 75 + .../math/prim/prob/poisson_binomial_lccdf.hpp | 69 + .../math/prim/prob/poisson_binomial_lcdf.hpp | 68 + .../math/prim/prob/poisson_binomial_lpmf.hpp | 66 + .../math/prim/prob/poisson_binomial_rng.hpp | 44 + .../stan/math/prim/prob/poisson_ccdf_log.hpp | 20 + .../stan/math/prim/prob/poisson_cdf.hpp | 74 + .../stan/math/prim/prob/poisson_cdf_log.hpp | 20 + .../stan/math/prim/prob/poisson_lccdf.hpp | 73 + .../stan/math/prim/prob/poisson_lcdf.hpp | 72 + .../stan/math/prim/prob/poisson_log.hpp | 28 + .../math/prim/prob/poisson_log_glm_log.hpp | 33 + .../math/prim/prob/poisson_log_glm_lpmf.hpp | 177 + .../stan/math/prim/prob/poisson_log_log.hpp | 30 + .../stan/math/prim/prob/poisson_log_lpmf.hpp | 102 + .../stan/math/prim/prob/poisson_log_rng.hpp | 56 + .../stan/math/prim/prob/poisson_lpmf.hpp | 95 + .../stan/math/prim/prob/poisson_rng.hpp | 54 + .../stan/math/prim/prob/rayleigh_ccdf_log.hpp | 21 + .../stan/math/prim/prob/rayleigh_cdf.hpp | 77 + .../stan/math/prim/prob/rayleigh_cdf_log.hpp | 21 + .../stan/math/prim/prob/rayleigh_lccdf.hpp | 69 + .../stan/math/prim/prob/rayleigh_lcdf.hpp | 76 + .../stan/math/prim/prob/rayleigh_log.hpp | 29 + .../stan/math/prim/prob/rayleigh_lpdf.hpp | 94 + .../stan/math/prim/prob/rayleigh_rng.hpp | 53 + .../prob/scaled_inv_chi_square_ccdf_log.hpp | 21 + .../prim/prob/scaled_inv_chi_square_cdf.hpp | 155 + .../prob/scaled_inv_chi_square_cdf_log.hpp | 21 + .../prim/prob/scaled_inv_chi_square_lccdf.hpp | 123 + .../prim/prob/scaled_inv_chi_square_lcdf.hpp | 123 + .../prim/prob/scaled_inv_chi_square_log.hpp | 51 + .../prim/prob/scaled_inv_chi_square_lpdf.hpp | 183 + .../prim/prob/scaled_inv_chi_square_rng.hpp | 63 + .../math/prim/prob/skew_normal_ccdf_log.hpp | 21 + .../stan/math/prim/prob/skew_normal_cdf.hpp | 119 + .../math/prim/prob/skew_normal_cdf_log.hpp | 21 + .../stan/math/prim/prob/skew_normal_lccdf.hpp | 114 + .../stan/math/prim/prob/skew_normal_lcdf.hpp | 117 + .../stan/math/prim/prob/skew_normal_log.hpp | 32 + .../stan/math/prim/prob/skew_normal_lpdf.hpp | 135 + .../stan/math/prim/prob/skew_normal_rng.hpp | 78 + .../math/prim/prob/std_normal_ccdf_log.hpp | 20 + .../stan/math/prim/prob/std_normal_cdf.hpp | 87 + .../math/prim/prob/std_normal_cdf_log.hpp | 20 + .../stan/math/prim/prob/std_normal_lccdf.hpp | 72 + .../stan/math/prim/prob/std_normal_lcdf.hpp | 202 + .../stan/math/prim/prob/std_normal_log.hpp | 39 + .../stan/math/prim/prob/std_normal_lpdf.hpp | 74 + .../stan/math/prim/prob/std_normal_rng.hpp | 33 + .../math/prim/prob/student_t_ccdf_log.hpp | 21 + .../stan/math/prim/prob/student_t_cdf.hpp | 199 + .../stan/math/prim/prob/student_t_cdf_log.hpp | 21 + .../stan/math/prim/prob/student_t_lccdf.hpp | 180 + .../stan/math/prim/prob/student_t_lcdf.hpp | 182 + .../stan/math/prim/prob/student_t_log.hpp | 60 + .../stan/math/prim/prob/student_t_lpdf.hpp | 170 + .../stan/math/prim/prob/student_t_rng.hpp | 72 + .../stan/math/prim/prob/uniform_ccdf_log.hpp | 22 + .../stan/math/prim/prob/uniform_cdf.hpp | 104 + .../stan/math/prim/prob/uniform_cdf_log.hpp | 22 + .../stan/math/prim/prob/uniform_lccdf.hpp | 95 + .../stan/math/prim/prob/uniform_lcdf.hpp | 98 + .../stan/math/prim/prob/uniform_log.hpp | 52 + .../stan/math/prim/prob/uniform_lpdf.hpp | 132 + .../stan/math/prim/prob/uniform_rng.hpp | 66 + .../stan/math/prim/prob/von_mises_cdf.hpp | 208 + .../stan/math/prim/prob/von_mises_lccdf.hpp | 122 + .../stan/math/prim/prob/von_mises_lcdf.hpp | 123 + .../stan/math/prim/prob/von_mises_log.hpp | 31 + .../stan/math/prim/prob/von_mises_lpdf.hpp | 106 + .../stan/math/prim/prob/von_mises_rng.hpp | 110 + .../stan/math/prim/prob/weibull_ccdf_log.hpp | 22 + .../stan/math/prim/prob/weibull_cdf.hpp | 104 + .../stan/math/prim/prob/weibull_cdf_log.hpp | 22 + .../stan/math/prim/prob/weibull_lccdf.hpp | 89 + .../stan/math/prim/prob/weibull_lcdf.hpp | 102 + .../stan/math/prim/prob/weibull_log.hpp | 32 + .../stan/math/prim/prob/weibull_lpdf.hpp | 132 + .../stan/math/prim/prob/weibull_rng.hpp | 63 + .../stan/math/prim/prob/wiener_log.hpp | 53 + .../stan/math/prim/prob/wiener_lpdf.hpp | 218 + .../stan/math/prim/prob/wishart_log.hpp | 61 + .../stan/math/prim/prob/wishart_lpdf.hpp | 110 + .../stan/math/prim/prob/wishart_rng.hpp | 39 + .../include/stan/math/prim/scal.hpp | 1 + .../stan/math/prim/scal/err/check_finite.hpp | 1 + .../prim/scal/err/check_greater_or_equal.hpp | 1 + .../math/prim/scal/err/check_nonnegative.hpp | 1 + .../stan/math/prim/scal/err/check_not_nan.hpp | 1 + .../math/prim/scal/err/check_positive.hpp | 1 + .../math/prim/scal/err/check_size_match.hpp | 1 + .../new/StanHeaders/include/stan/math/rev.hpp | 15 + .../include/stan/math/rev/core.hpp | 81 + .../stan/math/rev/core/Eigen_NumTraits.hpp | 466 + .../math/rev/core/accumulate_adjoints.hpp | 153 + .../stan/math/rev/core/arena_allocator.hpp | 48 + .../stan/math/rev/core/arena_matrix.hpp | 137 + .../math/rev/core/autodiffstackstorage.hpp | 147 + .../stan/math/rev/core/build_vari_array.hpp | 32 + .../stan/math/rev/core/callback_vari.hpp | 69 + .../stan/math/rev/core/chainable_alloc.hpp | 26 + .../stan/math/rev/core/chainable_object.hpp | 67 + .../stan/math/rev/core/chainablestack.hpp | 13 + .../include/stan/math/rev/core/count_vars.hpp | 153 + .../include/stan/math/rev/core/ddv_vari.hpp | 22 + .../stan/math/rev/core/deep_copy_vars.hpp | 87 + .../include/stan/math/rev/core/dv_vari.hpp | 20 + .../include/stan/math/rev/core/dvd_vari.hpp | 22 + .../include/stan/math/rev/core/dvv_vari.hpp | 22 + .../stan/math/rev/core/empty_nested.hpp | 18 + .../stan/math/rev/core/gevv_vvv_vari.hpp | 59 + .../include/stan/math/rev/core/grad.hpp | 59 + .../math/rev/core/init_chainablestack.hpp | 71 + .../stan/math/rev/core/matrix_vari.hpp | 33 + .../math/rev/core/nested_rev_autodiff.hpp | 47 + .../stan/math/rev/core/nested_size.hpp | 17 + .../stan/math/rev/core/operator_addition.hpp | 293 + .../math/rev/core/operator_divide_equal.hpp | 29 + .../stan/math/rev/core/operator_division.hpp | 150 + .../stan/math/rev/core/operator_equal.hpp | 88 + .../math/rev/core/operator_greater_than.hpp | 58 + .../core/operator_greater_than_or_equal.hpp | 64 + .../stan/math/rev/core/operator_less_than.hpp | 57 + .../rev/core/operator_less_than_or_equal.hpp | 63 + .../math/rev/core/operator_logical_and.hpp | 56 + .../math/rev/core/operator_logical_or.hpp | 54 + .../math/rev/core/operator_minus_equal.hpp | 30 + .../math/rev/core/operator_multiplication.hpp | 171 + .../math/rev/core/operator_multiply_equal.hpp | 30 + .../stan/math/rev/core/operator_not_equal.hpp | 92 + .../math/rev/core/operator_plus_equal.hpp | 30 + .../math/rev/core/operator_subtraction.hpp | 330 + .../rev/core/operator_unary_decrement.hpp | 64 + .../rev/core/operator_unary_increment.hpp | 60 + .../math/rev/core/operator_unary_negative.hpp | 55 + .../stan/math/rev/core/operator_unary_not.hpp | 21 + .../math/rev/core/operator_unary_plus.hpp | 53 + .../stan/math/rev/core/precomp_v_vari.hpp | 23 + .../stan/math/rev/core/precomp_vv_vari.hpp | 27 + .../stan/math/rev/core/precomp_vvv_vari.hpp | 30 + .../math/rev/core/precomputed_gradients.hpp | 226 + .../stan/math/rev/core/print_stack.hpp | 27 + .../include/stan/math/rev/core/profiling.hpp | 167 + .../include/stan/math/rev/core/read_var.hpp | 202 + .../stan/math/rev/core/recover_memory.hpp | 35 + .../math/rev/core/recover_memory_nested.hpp | 52 + .../math/rev/core/reverse_pass_callback.hpp | 45 + .../include/stan/math/rev/core/save_varis.hpp | 149 + .../math/rev/core/scoped_chainablestack.hpp | 80 + .../math/rev/core/set_zero_all_adjoints.hpp | 25 + .../rev/core/set_zero_all_adjoints_nested.hpp | 44 + .../stan/math/rev/core/start_nested.hpp | 28 + .../stan/math/rev/core/std_complex.hpp | 70 + .../include/stan/math/rev/core/std_isinf.hpp | 21 + .../include/stan/math/rev/core/std_isnan.hpp | 21 + .../math/rev/core/std_iterator_traits.hpp | 42 + .../stan/math/rev/core/std_numeric_limits.hpp | 83 + .../math/rev/core/stored_gradient_vari.hpp | 51 + .../include/stan/math/rev/core/typedefs.hpp | 52 + .../include/stan/math/rev/core/v_vari.hpp | 19 + .../include/stan/math/rev/core/var.hpp | 1069 + .../include/stan/math/rev/core/vari.hpp | 915 + .../include/stan/math/rev/core/vd_vari.hpp | 20 + .../include/stan/math/rev/core/vdd_vari.hpp | 22 + .../include/stan/math/rev/core/vdv_vari.hpp | 22 + .../stan/math/rev/core/vector_vari.hpp | 33 + .../include/stan/math/rev/core/vv_vari.hpp | 20 + .../include/stan/math/rev/core/vvd_vari.hpp | 22 + .../include/stan/math/rev/core/vvv_vari.hpp | 22 + .../stan/math/rev/core/zero_adjoints.hpp | 97 + .../StanHeaders/include/stan/math/rev/fun.hpp | 176 + .../include/stan/math/rev/fun/LDLT_factor.hpp | 69 + .../include/stan/math/rev/fun/Phi.hpp | 69 + .../include/stan/math/rev/fun/Phi_approx.hpp | 57 + .../include/stan/math/rev/fun/abs.hpp | 55 + .../include/stan/math/rev/fun/acos.hpp | 89 + .../include/stan/math/rev/fun/acosh.hpp | 99 + .../include/stan/math/rev/fun/adjoint_of.hpp | 57 + .../include/stan/math/rev/fun/arg.hpp | 23 + .../stan/math/rev/fun/as_array_or_scalar.hpp | 27 + .../include/stan/math/rev/fun/as_bool.hpp | 20 + .../rev/fun/as_column_vector_or_scalar.hpp | 39 + .../include/stan/math/rev/fun/asin.hpp | 88 + .../include/stan/math/rev/fun/asinh.hpp | 94 + .../include/stan/math/rev/fun/atan.hpp | 89 + .../include/stan/math/rev/fun/atan2.hpp | 102 + .../include/stan/math/rev/fun/atanh.hpp | 93 + .../stan/math/rev/fun/bessel_first_kind.hpp | 22 + .../stan/math/rev/fun/bessel_second_kind.hpp | 31 + .../include/stan/math/rev/fun/beta.hpp | 120 + .../stan/math/rev/fun/binary_log_loss.hpp | 72 + .../include/stan/math/rev/fun/cbrt.hpp | 60 + .../include/stan/math/rev/fun/ceil.hpp | 63 + .../math/rev/fun/cholesky_corr_constrain.hpp | 153 + .../stan/math/rev/fun/cholesky_decompose.hpp | 185 + .../rev/fun/cholesky_factor_constrain.hpp | 119 + .../stan/math/rev/fun/columns_dot_product.hpp | 126 + .../stan/math/rev/fun/columns_dot_self.hpp | 50 + .../include/stan/math/rev/fun/conj.hpp | 24 + .../math/rev/fun/corr_matrix_constrain.hpp | 80 + .../include/stan/math/rev/fun/cos.hpp | 79 + .../include/stan/math/rev/fun/cosh.hpp | 77 + .../stan/math/rev/fun/cov_exp_quad.hpp | 171 + .../math/rev/fun/cov_matrix_constrain.hpp | 124 + .../math/rev/fun/cov_matrix_constrain_lkj.hpp | 77 + .../include/stan/math/rev/fun/determinant.hpp | 34 + .../include/stan/math/rev/fun/digamma.hpp | 26 + .../include/stan/math/rev/fun/dims.hpp | 41 + .../include/stan/math/rev/fun/divide.hpp | 208 + .../include/stan/math/rev/fun/dot_product.hpp | 77 + .../include/stan/math/rev/fun/dot_self.hpp | 58 + .../stan/math/rev/fun/eigenvalues_sym.hpp | 95 + .../stan/math/rev/fun/eigenvectors_sym.hpp | 101 + .../include/stan/math/rev/fun/elt_divide.hpp | 95 + .../stan/math/rev/fun/elt_multiply.hpp | 66 + .../include/stan/math/rev/fun/erf.hpp | 62 + .../include/stan/math/rev/fun/erfc.hpp | 62 + .../include/stan/math/rev/fun/exp.hpp | 77 + .../include/stan/math/rev/fun/exp2.hpp | 50 + .../include/stan/math/rev/fun/expm1.hpp | 50 + .../include/stan/math/rev/fun/fabs.hpp | 97 + .../stan/math/rev/fun/falling_factorial.hpp | 31 + .../include/stan/math/rev/fun/fdim.hpp | 135 + .../include/stan/math/rev/fun/fill.hpp | 60 + .../include/stan/math/rev/fun/floor.hpp | 63 + .../include/stan/math/rev/fun/fma.hpp | 253 + .../include/stan/math/rev/fun/fmax.hpp | 131 + .../include/stan/math/rev/fun/fmin.hpp | 127 + .../include/stan/math/rev/fun/fmod.hpp | 140 + .../stan/math/rev/fun/from_var_value.hpp | 70 + .../include/stan/math/rev/fun/gamma_p.hpp | 116 + .../include/stan/math/rev/fun/gamma_q.hpp | 64 + .../stan/math/rev/fun/generalized_inverse.hpp | 93 + .../stan/math/rev/fun/gp_exp_quad_cov.hpp | 291 + .../stan/math/rev/fun/gp_periodic_cov.hpp | 396 + .../include/stan/math/rev/fun/grad.hpp | 32 + .../stan/math/rev/fun/grad_inc_beta.hpp | 53 + .../include/stan/math/rev/fun/hypot.hpp | 110 + .../include/stan/math/rev/fun/if_else.hpp | 56 + .../include/stan/math/rev/fun/inc_beta.hpp | 44 + .../stan/math/rev/fun/initialize_fill.hpp | 33 + .../stan/math/rev/fun/initialize_variable.hpp | 47 + .../include/stan/math/rev/fun/inv.hpp | 42 + .../include/stan/math/rev/fun/inv_Phi.hpp | 40 + .../include/stan/math/rev/fun/inv_cloglog.hpp | 43 + .../include/stan/math/rev/fun/inv_logit.hpp | 53 + .../include/stan/math/rev/fun/inv_sqrt.hpp | 47 + .../include/stan/math/rev/fun/inv_square.hpp | 46 + .../include/stan/math/rev/fun/inverse.hpp | 44 + .../include/stan/math/rev/fun/is_inf.hpp | 24 + .../include/stan/math/rev/fun/is_nan.hpp | 24 + .../stan/math/rev/fun/is_uninitialized.hpp | 27 + .../include/stan/math/rev/fun/lambert_w.hpp | 61 + .../include/stan/math/rev/fun/lbeta.hpp | 108 + .../include/stan/math/rev/fun/ldexp.hpp | 23 + .../include/stan/math/rev/fun/lgamma.hpp | 36 + .../include/stan/math/rev/fun/lmgamma.hpp | 33 + .../include/stan/math/rev/fun/log.hpp | 84 + .../include/stan/math/rev/fun/log10.hpp | 71 + .../include/stan/math/rev/fun/log1m.hpp | 48 + .../include/stan/math/rev/fun/log1m_exp.hpp | 38 + .../stan/math/rev/fun/log1m_inv_logit.hpp | 27 + .../include/stan/math/rev/fun/log1p.hpp | 33 + .../include/stan/math/rev/fun/log1p_exp.hpp | 30 + .../include/stan/math/rev/fun/log2.hpp | 54 + .../stan/math/rev/fun/log_determinant.hpp | 34 + .../math/rev/fun/log_determinant_ldlt.hpp | 43 + .../stan/math/rev/fun/log_determinant_spd.hpp | 108 + .../stan/math/rev/fun/log_diff_exp.hpp | 84 + .../math/rev/fun/log_falling_factorial.hpp | 75 + .../stan/math/rev/fun/log_inv_logit.hpp | 27 + .../stan/math/rev/fun/log_inv_logit_diff.hpp | 85 + .../include/stan/math/rev/fun/log_mix.hpp | 129 + .../math/rev/fun/log_rising_factorial.hpp | 57 + .../include/stan/math/rev/fun/log_softmax.hpp | 130 + .../include/stan/math/rev/fun/log_sum_exp.hpp | 109 + .../include/stan/math/rev/fun/logit.hpp | 24 + .../stan/math/rev/fun/matrix_exp_multiply.hpp | 40 + .../stan/math/rev/fun/matrix_power.hpp | 74 + .../stan/math/rev/fun/mdivide_left.hpp | 91 + .../stan/math/rev/fun/mdivide_left_ldlt.hpp | 77 + .../stan/math/rev/fun/mdivide_left_spd.hpp | 354 + .../stan/math/rev/fun/mdivide_left_tri.hpp | 413 + .../rev/fun/modified_bessel_first_kind.hpp | 32 + .../rev/fun/modified_bessel_second_kind.hpp | 32 + .../include/stan/math/rev/fun/multiply.hpp | 199 + .../stan/math/rev/fun/multiply_log.hpp | 234 + .../fun/multiply_lower_tri_self_transpose.hpp | 41 + .../include/stan/math/rev/fun/norm.hpp | 24 + .../stan/math/rev/fun/ordered_constrain.hpp | 82 + .../include/stan/math/rev/fun/owens_t.hpp | 98 + .../include/stan/math/rev/fun/polar.hpp | 59 + .../rev/fun/positive_ordered_constrain.hpp | 62 + .../include/stan/math/rev/fun/pow.hpp | 326 + .../stan/math/rev/fun/primitive_value.hpp | 22 + .../include/stan/math/rev/fun/proj.hpp | 27 + .../include/stan/math/rev/fun/quad_form.hpp | 342 + .../stan/math/rev/fun/quad_form_sym.hpp | 42 + .../include/stan/math/rev/fun/read_corr_L.hpp | 179 + .../stan/math/rev/fun/read_corr_matrix.hpp | 68 + .../include/stan/math/rev/fun/read_cov_L.hpp | 57 + .../stan/math/rev/fun/read_cov_matrix.hpp | 65 + .../stan/math/rev/fun/rising_factorial.hpp | 30 + .../include/stan/math/rev/fun/round.hpp | 59 + .../stan/math/rev/fun/rows_dot_product.hpp | 126 + .../include/stan/math/rev/fun/sd.hpp | 101 + .../stan/math/rev/fun/simplex_constrain.hpp | 77 + .../include/stan/math/rev/fun/sin.hpp | 80 + .../stan/math/rev/fun/singular_values.hpp | 48 + .../include/stan/math/rev/fun/sinh.hpp | 78 + .../include/stan/math/rev/fun/softmax.hpp | 49 + .../include/stan/math/rev/fun/sqrt.hpp | 66 + .../include/stan/math/rev/fun/square.hpp | 65 + .../stan/math/rev/fun/squared_distance.hpp | 213 + .../include/stan/math/rev/fun/stan_print.hpp | 15 + .../include/stan/math/rev/fun/step.hpp | 32 + .../include/stan/math/rev/fun/sum.hpp | 88 + .../include/stan/math/rev/fun/svd_U.hpp | 73 + .../include/stan/math/rev/fun/svd_V.hpp | 73 + .../include/stan/math/rev/fun/tan.hpp | 79 + .../include/stan/math/rev/fun/tanh.hpp | 76 + .../include/stan/math/rev/fun/tcrossprod.hpp | 42 + .../include/stan/math/rev/fun/tgamma.hpp | 62 + .../include/stan/math/rev/fun/to_arena.hpp | 157 + .../include/stan/math/rev/fun/to_var.hpp | 167 + .../stan/math/rev/fun/to_var_value.hpp | 61 + .../include/stan/math/rev/fun/trace.hpp | 35 + .../rev/fun/trace_gen_inv_quad_form_ldlt.hpp | 328 + .../stan/math/rev/fun/trace_gen_quad_form.hpp | 289 + .../math/rev/fun/trace_inv_quad_form_ldlt.hpp | 80 + .../stan/math/rev/fun/trace_quad_form.hpp | 188 + .../include/stan/math/rev/fun/trigamma.hpp | 27 + .../include/stan/math/rev/fun/trunc.hpp | 59 + .../math/rev/fun/unit_vector_constrain.hpp | 87 + .../include/stan/math/rev/fun/value_of.hpp | 30 + .../stan/math/rev/fun/value_of_rec.hpp | 23 + .../include/stan/math/rev/fun/variance.hpp | 107 + .../include/stan/math/rev/functor.hpp | 30 + .../stan/math/rev/functor/adj_jac_apply.hpp | 601 + .../math/rev/functor/algebra_solver_fp.hpp | 388 + .../rev/functor/algebra_solver_newton.hpp | 155 + .../rev/functor/algebra_solver_powell.hpp | 322 + .../stan/math/rev/functor/algebra_system.hpp | 180 + .../math/rev/functor/apply_scalar_unary.hpp | 52 + .../math/rev/functor/apply_vector_unary.hpp | 66 + .../math/rev/functor/coupled_ode_system.hpp | 223 + .../math/rev/functor/cvodes_integrator.hpp | 352 + .../stan/math/rev/functor/cvodes_utils.hpp | 52 + .../stan/math/rev/functor/gradient.hpp | 56 + .../math/rev/functor/idas_forward_system.hpp | 175 + .../stan/math/rev/functor/idas_integrator.hpp | 273 + .../stan/math/rev/functor/idas_system.hpp | 357 + .../stan/math/rev/functor/integrate_1d.hpp | 174 + .../stan/math/rev/functor/integrate_dae.hpp | 62 + .../math/rev/functor/integrate_ode_adams.hpp | 42 + .../math/rev/functor/integrate_ode_bdf.hpp | 42 + .../stan/math/rev/functor/jacobian.hpp | 39 + .../stan/math/rev/functor/kinsol_data.hpp | 134 + .../stan/math/rev/functor/kinsol_solve.hpp | 141 + .../math/rev/functor/map_rect_concurrent.hpp | 77 + .../stan/math/rev/functor/map_rect_reduce.hpp | 136 + .../stan/math/rev/functor/ode_adams.hpp | 162 + .../include/stan/math/rev/functor/ode_bdf.hpp | 162 + .../rev/functor/ode_store_sensitivities.hpp | 110 + .../rev/functor/operands_and_partials.hpp | 389 + .../stan/math/rev/functor/reduce_sum.hpp | 280 + .../StanHeaders/include/stan/math/rev/mat.hpp | 2 + .../include/stan/math/rev/meta.hpp | 16 + .../StanHeaders/include/stan/math/version.hpp | 33 + .../include/stan_sundials_printf_override.hpp | 12 + .../include/sundials/sundials_band.h | 181 + .../include/sundials/sundials_config.h | 192 + .../include/sundials/sundials_config.in | 172 + .../sundials/sundials_cuda_policies.hpp | 190 + .../include/sundials/sundials_dense.h | 212 + .../include/sundials/sundials_direct.h | 339 + .../include/sundials/sundials_export.h | 42 + .../include/sundials/sundials_fconfig.h | 51 + .../include/sundials/sundials_fconfig.in | 51 + .../include/sundials/sundials_fnvector.h | 42 + .../include/sundials/sundials_futils.h | 38 + .../include/sundials/sundials_iterative.h | 263 + .../include/sundials/sundials_lapack.h | 256 + .../include/sundials/sundials_linearsolver.h | 219 + .../include/sundials/sundials_math.h | 193 + .../include/sundials/sundials_matrix.h | 135 + .../include/sundials/sundials_memory.h | 147 + .../include/sundials/sundials_mpi_types.h | 39 + .../sundials/sundials_nonlinearsolver.h | 210 + .../include/sundials/sundials_nvector.h | 292 + .../sundials/sundials_nvector_senswrapper.h | 104 + .../include/sundials/sundials_types.h | 160 + .../include/sundials/sundials_version.h | 38 + .../include/sundials/sundials_xbraid.h | 134 + .../new/StanHeaders/include/sundials_debug.h | 42 + .../include/sunlinsol/sunlinsol_band.h | 76 + .../sunlinsol/sunlinsol_cusolversp_batchqr.h | 111 + .../include/sunlinsol/sunlinsol_dense.h | 80 + .../include/sunlinsol/sunlinsol_klu.h | 152 + .../include/sunlinsol/sunlinsol_lapackband.h | 87 + .../include/sunlinsol/sunlinsol_lapackdense.h | 87 + .../include/sunlinsol/sunlinsol_pcg.h | 117 + .../include/sunlinsol/sunlinsol_spbcgs.h | 127 + .../include/sunlinsol/sunlinsol_spfgmr.h | 135 + .../include/sunlinsol/sunlinsol_spgmr.h | 137 + .../include/sunlinsol/sunlinsol_sptfqmr.h | 126 + .../include/sunlinsol/sunlinsol_superludist.h | 142 + .../include/sunlinsol/sunlinsol_superlumt.h | 126 + .../include/sunmatrix/sunmatrix_band.h | 129 + .../include/sunmatrix/sunmatrix_cusparse.h | 134 + .../include/sunmatrix/sunmatrix_dense.h | 105 + .../include/sunmatrix/sunmatrix_slunrloc.h | 86 + .../include/sunmatrix/sunmatrix_sparse.h | 146 + .../include/sunmemory/sunmemory_cuda.h | 51 + .../include/sunmemory/sunmemory_hip.h | 51 + .../sunnonlinsol/sunnonlinsol_fixedpoint.h | 132 + .../sunnonlinsol/sunnonlinsol_newton.h | 123 + .../sunnonlinsol/sunnonlinsol_petscsnes.h | 97 + .../new/StanHeaders/libs/x64/StanHeaders.dll | Bin 0 -> 417280 bytes .../new/StanHeaders/libs/x64/symbols.rds | Bin 0 -> 11172 bytes revdep/library/sprtt/new/StanHeaders/stanc.js | 27134 ++++++++++++++++ revdep/library/sprtt/new/digest/DESCRIPTION | 34 + revdep/library/sprtt/new/digest/GPL-2 | 339 + revdep/library/sprtt/new/digest/INDEX | 10 + revdep/library/sprtt/new/digest/MD5 | 42 + revdep/library/sprtt/new/digest/NAMESPACE | 46 + revdep/library/sprtt/new/digest/R/digest | 27 + revdep/library/sprtt/new/digest/R/digest.rdb | Bin 0 -> 45882 bytes revdep/library/sprtt/new/digest/R/digest.rdx | Bin 0 -> 1048 bytes .../sprtt/new/digest/demo/vectorised.R | 34 + revdep/library/sprtt/new/digest/help/AnIndex | 35 + .../library/sprtt/new/digest/help/aliases.rds | Bin 0 -> 332 bytes .../library/sprtt/new/digest/help/digest.rdb | Bin 0 -> 36919 bytes .../library/sprtt/new/digest/help/digest.rdx | Bin 0 -> 298 bytes .../library/sprtt/new/digest/help/paths.rds | Bin 0 -> 189 bytes .../sprtt/new/digest/html/00Index.html | 97 + revdep/library/sprtt/new/digest/html/R.css | 130 + .../sprtt/new/digest/include/pmurhashAPI.h | 106 + .../sprtt/new/digest/libs/x64/digest.dll | Bin 0 -> 119808 bytes .../sprtt/new/digest/libs/x64/symbols.rds | Bin 0 -> 2100 bytes .../sprtt/new/digest/tinytest/test_aes.R | 167 + .../sprtt/new/digest/tinytest/test_blake3.R | 63 + .../sprtt/new/digest/tinytest/test_crc32.R | 16 + .../sprtt/new/digest/tinytest/test_digest.R | 316 + .../new/digest/tinytest/test_digest2int.R | 13 + .../sprtt/new/digest/tinytest/test_encoding.R | 27 + .../sprtt/new/digest/tinytest/test_hmac.R | 88 + .../sprtt/new/digest/tinytest/test_misc.R | 56 + .../tinytest/test_new_matrix_behaviour.R | 113 + .../sprtt/new/digest/tinytest/test_num2hex.R | 68 + .../sprtt/new/digest/tinytest/test_raw.R | 20 + .../sprtt/new/digest/tinytest/test_sha1.R | 496 + revdep/library/sprtt/new/jsonlite/CITATION | 9 + revdep/library/sprtt/new/jsonlite/DESCRIPTION | 34 + revdep/library/sprtt/new/jsonlite/INDEX | 11 + revdep/library/sprtt/new/jsonlite/LICENSE | 2 + revdep/library/sprtt/new/jsonlite/MD5 | 37 + revdep/library/sprtt/new/jsonlite/NAMESPACE | 49 + revdep/library/sprtt/new/jsonlite/NEWS | 240 + revdep/library/sprtt/new/jsonlite/R/jsonlite | 27 + .../library/sprtt/new/jsonlite/R/jsonlite.rdb | Bin 0 -> 91564 bytes .../library/sprtt/new/jsonlite/R/jsonlite.rdx | Bin 0 -> 1552 bytes .../library/sprtt/new/jsonlite/help/AnIndex | 29 + .../sprtt/new/jsonlite/help/aliases.rds | Bin 0 -> 311 bytes .../sprtt/new/jsonlite/help/jsonlite.rdb | Bin 0 -> 30813 bytes .../sprtt/new/jsonlite/help/jsonlite.rdx | Bin 0 -> 410 bytes .../library/sprtt/new/jsonlite/help/paths.rds | Bin 0 -> 254 bytes .../sprtt/new/jsonlite/html/00Index.html | 85 + revdep/library/sprtt/new/jsonlite/html/R.css | 130 + .../sprtt/new/jsonlite/libs/x64/jsonlite.dll | Bin 0 -> 103424 bytes .../sprtt/new/jsonlite/libs/x64/symbols.rds | Bin 0 -> 1971 bytes revdep/library/sprtt/new/lme4/CITATION | 25 + revdep/library/sprtt/new/lme4/DESCRIPTION | 67 + revdep/library/sprtt/new/lme4/INDEX | 113 + revdep/library/sprtt/new/lme4/MD5 | 81 + revdep/library/sprtt/new/lme4/NAMESPACE | 288 + revdep/library/sprtt/new/lme4/NEWS.Rd | 1249 + revdep/library/sprtt/new/lme4/R/lme4 | 27 + revdep/library/sprtt/new/lme4/R/lme4.rdb | Bin 0 -> 884051 bytes revdep/library/sprtt/new/lme4/R/lme4.rdx | Bin 0 -> 5915 bytes revdep/library/sprtt/new/lme4/R/sysdata.rdb | Bin 0 -> 661349 bytes revdep/library/sprtt/new/lme4/R/sysdata.rdx | Bin 0 -> 161 bytes revdep/library/sprtt/new/lme4/data/Rdata.rdb | Bin 0 -> 250054 bytes revdep/library/sprtt/new/lme4/data/Rdata.rds | Bin 0 -> 212 bytes revdep/library/sprtt/new/lme4/data/Rdata.rdx | Bin 0 -> 329 bytes revdep/library/sprtt/new/lme4/help/AnIndex | 204 + .../library/sprtt/new/lme4/help/aliases.rds | Bin 0 -> 1715 bytes revdep/library/sprtt/new/lme4/help/lme4.rdb | Bin 0 -> 381941 bytes revdep/library/sprtt/new/lme4/help/lme4.rdx | Bin 0 -> 1953 bytes revdep/library/sprtt/new/lme4/help/paths.rds | Bin 0 -> 814 bytes .../library/sprtt/new/lme4/html/00Index.html | 577 + revdep/library/sprtt/new/lme4/html/R.css | 130 + .../library/sprtt/new/lme4/libs/x64/lme4.dll | Bin 0 -> 1411072 bytes .../sprtt/new/lme4/libs/x64/symbols.rds | Bin 0 -> 13604 bytes .../sprtt/new/lme4/testdata/Johnson.rda | Bin 0 -> 833 bytes .../sprtt/new/lme4/testdata/SO_sep25.RData | Bin 0 -> 12887 bytes .../sprtt/new/lme4/testdata/Thailand.rda | Bin 0 -> 6660 bytes .../sprtt/new/lme4/testdata/badprof.rds | Bin 0 -> 106571 bytes .../sprtt/new/lme4/testdata/boo01L.RData | Bin 0 -> 30706 bytes .../new/lme4/testdata/colonizer_rand.rda | Bin 0 -> 473 bytes .../sprtt/new/lme4/testdata/confint_ex.rda | Bin 0 -> 405 bytes .../new/lme4/testdata/crabs_randdata00.Rda | Bin 0 -> 782 bytes .../new/lme4/testdata/crabs_randdata2.Rda | Bin 0 -> 1906 bytes .../sprtt/new/lme4/testdata/culcita_dat.RData | Bin 0 -> 307 bytes .../sprtt/new/lme4/testdata/dat20101314.csv | 46 + .../sprtt/new/lme4/testdata/dataEx_Glmer.txt | 181 + .../sprtt/new/lme4/testdata/fakesim.RData | Bin 0 -> 4328 bytes .../sprtt/new/lme4/testdata/gopherdat2.RData | Bin 0 -> 576 bytes .../new/lme4/testdata/gotway_hessianfly.rda | Bin 0 -> 73540 bytes .../sprtt/new/lme4/testdata/harmel_density.R | 10 + .../new/lme4/testdata/harmel_profile.rds | Bin 0 -> 16582 bytes .../sprtt/new/lme4/testdata/hotpower.csv | 12712 ++++++++ .../sprtt/new/lme4/testdata/koller-data.R | 203 + .../sprtt/new/lme4/testdata/lme-tst-fits.R | 88 + .../sprtt/new/lme4/testdata/lme-tst-fits.rda | Bin 0 -> 251611 bytes .../sprtt/new/lme4/testdata/lme-tst-funs.R | 144 + .../sprtt/new/lme4/testdata/lmerperf.rda | Bin 0 -> 2909 bytes .../sprtt/new/lme4/testdata/mastitis.rda | Bin 0 -> 16379 bytes .../sprtt/new/lme4/testdata/polytom2.RData | Bin 0 -> 2020 bytes .../sprtt/new/lme4/testdata/polytom3.RData | Bin 0 -> 5765 bytes .../new/lme4/testdata/polytomous_test.RData | Bin 0 -> 2020 bytes .../lme4/testdata/polytomous_vcov_ex.RData | Bin 0 -> 68626 bytes .../sprtt/new/lme4/testdata/prLogistic.RData | Bin 0 -> 26767 bytes .../new/lme4/testdata/radinger_dat.RData | Bin 0 -> 1602 bytes .../sprtt/new/lme4/testdata/rankMatrix.rds | Bin 0 -> 860 bytes .../sprtt/new/lme4/testdata/respiratory.RData | Bin 0 -> 1473 bytes .../sprtt/new/lme4/testdata/sbTobb.Rdata | Bin 0 -> 86514 bytes .../sprtt/new/lme4/testdata/strip_env.R | 25 + .../new/lme4/testdata/survdat_reduced.Rda | Bin 0 -> 2251 bytes .../sprtt/new/lme4/testdata/tprfm1.RData | Bin 0 -> 98853 bytes .../sprtt/new/lme4/testdata/trees513.R | 9 + .../sprtt/new/lme4/testdata/trees513.RData | Bin 0 -> 18599 bytes revdep/library/sprtt/new/mvtnorm/CITATION | 11 + .../new/mvtnorm/C_API_Example/DESCRIPTION | 10 + .../sprtt/new/mvtnorm/C_API_Example/NAMESPACE | 4 + .../sprtt/new/mvtnorm/C_API_Example/R/test.R | 20 + .../new/mvtnorm/C_API_Example/src/test.c | 20 + .../new/mvtnorm/C_API_Example/tests/test.R | 14 + revdep/library/sprtt/new/mvtnorm/DESCRIPTION | 41 + revdep/library/sprtt/new/mvtnorm/INDEX | 14 + revdep/library/sprtt/new/mvtnorm/MD5 | 40 + revdep/library/sprtt/new/mvtnorm/NAMESPACE | 42 + revdep/library/sprtt/new/mvtnorm/NEWS.Rd | 47 + revdep/library/sprtt/new/mvtnorm/NEWS.old | 482 + revdep/library/sprtt/new/mvtnorm/R/mvtnorm | 27 + .../library/sprtt/new/mvtnorm/R/mvtnorm.rdb | Bin 0 -> 133636 bytes .../library/sprtt/new/mvtnorm/R/mvtnorm.rdx | Bin 0 -> 1332 bytes revdep/library/sprtt/new/mvtnorm/help/AnIndex | 55 + .../sprtt/new/mvtnorm/help/aliases.rds | Bin 0 -> 465 bytes .../sprtt/new/mvtnorm/help/mvtnorm.rdb | Bin 0 -> 62256 bytes .../sprtt/new/mvtnorm/help/mvtnorm.rdx | Bin 0 -> 397 bytes .../library/sprtt/new/mvtnorm/help/paths.rds | Bin 0 -> 226 bytes .../sprtt/new/mvtnorm/html/00Index.html | 137 + revdep/library/sprtt/new/mvtnorm/html/R.css | 130 + .../sprtt/new/mvtnorm/include/mvtnorm.h | 31 + .../sprtt/new/mvtnorm/include/mvtnormAPI.h | 24 + .../sprtt/new/mvtnorm/libs/x64/mvtnorm.dll | Bin 0 -> 90112 bytes .../sprtt/new/mvtnorm/libs/x64/symbols.rds | Bin 0 -> 1399 bytes revdep/library/sprtt/new/mvtnorm/litdb.bib | 77 + .../sprtt/new/processx/CODE_OF_CONDUCT.md | 25 + revdep/library/sprtt/new/processx/DESCRIPTION | 41 + revdep/library/sprtt/new/processx/INDEX | 11 + revdep/library/sprtt/new/processx/LICENSE | 2 + revdep/library/sprtt/new/processx/MD5 | 40 + revdep/library/sprtt/new/processx/NAMESPACE | 48 + revdep/library/sprtt/new/processx/NEWS.md | 318 + revdep/library/sprtt/new/processx/R/processx | 27 + .../library/sprtt/new/processx/R/processx.rdb | Bin 0 -> 187622 bytes .../library/sprtt/new/processx/R/processx.rdx | Bin 0 -> 2866 bytes .../sprtt/new/processx/bin/x64/interrupt.exe | Bin 0 -> 149331 bytes .../library/sprtt/new/processx/bin/x64/px.exe | Bin 0 -> 428510 bytes .../sprtt/new/processx/bin/x64/pxu.exe | Bin 0 -> 434270 bytes .../sprtt/new/processx/bin/x64/sock.exe | Bin 0 -> 147641 bytes .../sprtt/new/processx/bin/x64/supervisor.exe | Bin 0 -> 164724 bytes .../library/sprtt/new/processx/help/AnIndex | 40 + .../sprtt/new/processx/help/aliases.rds | Bin 0 -> 463 bytes .../help/figures/lifecycle-archived.svg | 1 + .../help/figures/lifecycle-defunct.svg | 1 + .../help/figures/lifecycle-deprecated.svg | 1 + .../help/figures/lifecycle-experimental.svg | 1 + .../help/figures/lifecycle-maturing.svg | 1 + .../help/figures/lifecycle-questioning.svg | 1 + .../help/figures/lifecycle-stable.svg | 1 + .../help/figures/lifecycle-superseded.svg | 1 + .../library/sprtt/new/processx/help/paths.rds | Bin 0 -> 279 bytes .../sprtt/new/processx/help/processx.rdb | Bin 0 -> 86419 bytes .../sprtt/new/processx/help/processx.rdx | Bin 0 -> 469 bytes .../sprtt/new/processx/html/00Index.html | 98 + revdep/library/sprtt/new/processx/html/R.css | 130 + .../processx/include/processx/unix-sockets.c | 151 + .../processx/include/processx/unix-sockets.h | 42 + .../sprtt/new/processx/libs/x64/client.dll | Bin 0 -> 43008 bytes .../sprtt/new/processx/libs/x64/processx.dll | Bin 0 -> 96256 bytes .../sprtt/new/processx/libs/x64/symbols.rds | Bin 0 -> 3882 bytes revdep/library/sprtt/new/testthat/CITATION | 10 + revdep/library/sprtt/new/testthat/DESCRIPTION | 41 + revdep/library/sprtt/new/testthat/INDEX | 65 + revdep/library/sprtt/new/testthat/LICENSE | 2 + revdep/library/sprtt/new/testthat/MD5 | 66 + revdep/library/sprtt/new/testthat/NAMESPACE | 228 + revdep/library/sprtt/new/testthat/NEWS.md | 1699 + revdep/library/sprtt/new/testthat/R/testthat | 27 + .../library/sprtt/new/testthat/R/testthat.rdb | Bin 0 -> 1116093 bytes .../library/sprtt/new/testthat/R/testthat.rdx | Bin 0 -> 7165 bytes .../new/testthat/examples/test-failure.R | 9 + .../new/testthat/examples/test-success.R | 16 + .../library/sprtt/new/testthat/help/AnIndex | 207 + .../sprtt/new/testthat/help/aliases.rds | Bin 0 -> 1787 bytes .../help/figures/lifecycle-archived.svg | 1 + .../help/figures/lifecycle-defunct.svg | 1 + .../help/figures/lifecycle-deprecated.svg | 1 + .../help/figures/lifecycle-experimental.svg | 1 + .../help/figures/lifecycle-maturing.svg | 1 + .../help/figures/lifecycle-questioning.svg | 1 + .../figures/lifecycle-soft-deprecated.svg | 1 + .../help/figures/lifecycle-stable.svg | 1 + .../help/figures/lifecycle-superseded.svg | 1 + .../sprtt/new/testthat/help/figures/logo.png | Bin 0 -> 20355 bytes .../library/sprtt/new/testthat/help/paths.rds | Bin 0 -> 992 bytes .../sprtt/new/testthat/help/testthat.rdb | Bin 0 -> 235404 bytes .../sprtt/new/testthat/help/testthat.rdx | Bin 0 -> 2333 bytes .../sprtt/new/testthat/html/00Index.html | 217 + revdep/library/sprtt/new/testthat/html/R.css | 130 + .../sprtt/new/testthat/include/testthat.h | 1 + .../new/testthat/include/testthat/testthat.h | 208 + .../testthat/include/testthat/vendor/catch.h | 11535 +++++++ .../sprtt/new/testthat/libs/x64/symbols.rds | Bin 0 -> 14797 bytes .../sprtt/new/testthat/libs/x64/testthat.dll | Bin 0 -> 1366016 bytes .../resources/catch-routine-registration.R | 6 + .../sprtt/new/testthat/resources/test-cpp.R | 1 + .../new/testthat/resources/test-example.cpp | 35 + .../new/testthat/resources/test-runner.cpp | 7 + revdep/library/sprtt/new/vctrs/DESCRIPTION | 43 + revdep/library/sprtt/new/vctrs/INDEX | 65 + revdep/library/sprtt/new/vctrs/LICENSE | 2 + revdep/library/sprtt/new/vctrs/MD5 | 56 + revdep/library/sprtt/new/vctrs/NAMESPACE | 659 + revdep/library/sprtt/new/vctrs/NEWS.md | 1376 + revdep/library/sprtt/new/vctrs/R/vctrs | 27 + revdep/library/sprtt/new/vctrs/R/vctrs.rdb | Bin 0 -> 442771 bytes revdep/library/sprtt/new/vctrs/R/vctrs.rdx | Bin 0 -> 12931 bytes revdep/library/sprtt/new/vctrs/WORDLIST | 1 + revdep/library/sprtt/new/vctrs/help/AnIndex | 225 + .../library/sprtt/new/vctrs/help/aliases.rds | Bin 0 -> 1854 bytes .../sprtt/new/vctrs/help/figures/cast.png | Bin 0 -> 15293 bytes .../sprtt/new/vctrs/help/figures/coerce.png | Bin 0 -> 9394 bytes .../sprtt/new/vctrs/help/figures/combined.png | Bin 0 -> 46780 bytes .../vctrs/help/figures/lifecycle-archived.svg | 1 + .../vctrs/help/figures/lifecycle-defunct.svg | 1 + .../help/figures/lifecycle-deprecated.svg | 1 + .../help/figures/lifecycle-experimental.svg | 1 + .../vctrs/help/figures/lifecycle-maturing.svg | 1 + .../help/figures/lifecycle-questioning.svg | 1 + .../figures/lifecycle-soft-deprecated.svg | 1 + .../vctrs/help/figures/lifecycle-stable.svg | 1 + .../help/figures/lifecycle-superseded.svg | 1 + .../sprtt/new/vctrs/help/figures/logo.png | Bin 0 -> 66548 bytes .../vctrs/help/figures/sizes-recycling.png | Bin 0 -> 8275 bytes .../new/vctrs/help/figures/vec-count-deps.png | Bin 0 -> 18126 bytes .../new/vctrs/help/figures/vec-count-deps.svg | 3 + revdep/library/sprtt/new/vctrs/help/paths.rds | Bin 0 -> 936 bytes revdep/library/sprtt/new/vctrs/help/vctrs.rdb | Bin 0 -> 368612 bytes revdep/library/sprtt/new/vctrs/help/vctrs.rdx | Bin 0 -> 2248 bytes .../library/sprtt/new/vctrs/html/00Index.html | 326 + revdep/library/sprtt/new/vctrs/html/R.css | 130 + .../library/sprtt/new/vctrs/include/vctrs.c | 17 + .../library/sprtt/new/vctrs/include/vctrs.h | 20 + .../sprtt/new/vctrs/libs/x64/symbols.rds | Bin 0 -> 23894 bytes .../sprtt/new/vctrs/libs/x64/vctrs.dll | Bin 0 -> 470528 bytes revdep/problems.md | 1 + vignettes/references.bib | 16 +- 3182 files changed, 381939 insertions(+), 50 deletions(-) create mode 100644 revdep/README.md create mode 100644 revdep/checks/libraries.csv create mode 100644 revdep/cran.md create mode 100644 revdep/data.sqlite create mode 100644 revdep/failures.md create mode 100644 revdep/library/sprtt/new/Rcpp/CITATION create mode 100644 revdep/library/sprtt/new/Rcpp/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/INDEX create mode 100644 revdep/library/sprtt/new/Rcpp/MD5 create mode 100644 revdep/library/sprtt/new/Rcpp/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/NEWS.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/R/Rcpp create mode 100644 revdep/library/sprtt/new/Rcpp/R/Rcpp.rdb create mode 100644 revdep/library/sprtt/new/Rcpp/R/Rcpp.rdx create mode 100644 revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.10.0.txt create mode 100644 revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.11.0.txt create mode 100644 revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.6.0.txt create mode 100644 revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.7.0.txt create mode 100644 revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.8.0.txt create mode 100644 revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.9.0.txt create mode 100644 revdep/library/sprtt/new/Rcpp/bib/Rcpp.bib create mode 100644 revdep/library/sprtt/new/Rcpp/discovery/cxx0x.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Attributes/Depends.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Attributes/Export.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Attributes/cppFunction.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Attributes/sourceCpp.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/GNUmakefile create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/buildAndRun.sh create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.h create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve11_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve12_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve13_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve14_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve2_c.c create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve3_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve4_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve5_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve7_c.c create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve8_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve9_cpp.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/exampleRCode.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/loopmacro.h create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead.sh create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead_1.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead_2.c create mode 100644 revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmark.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmarkLongley.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaArmadillo.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaGSL.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/FastLM/lmArmadillo.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/FastLM/lmGSL.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Misc/fibonacci.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Misc/ifelseLooped.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Misc/newFib.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Misc/piBySimulation.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/Misc/piSugar.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/OpenMP/GNUmakefile create mode 100644 revdep/library/sprtt/new/Rcpp/examples/OpenMP/OpenMPandInline.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/OpenMP/check.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/OpenMP/piWithInterrupts.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppGibbs/RcppGibbs.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppGibbs/RcppGibbs_Updated.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppGibbs/timeRNGs.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppInline/RObject.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineExample.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineWithLibsExamples.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppSimpleExample.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppInline/UncaughtExceptions.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/RcppInline/external_pointer.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timer.h create mode 100644 revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timertest.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/sugarBenchmarks.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/functionCallback/README create mode 100644 revdep/library/sprtt/new/Rcpp/examples/functionCallback/newApiExample.r create mode 100644 revdep/library/sprtt/new/Rcpp/examples/performance/extractors.R create mode 100644 revdep/library/sprtt/new/Rcpp/examples/performance/performance.R create mode 100644 revdep/library/sprtt/new/Rcpp/help/AnIndex create mode 100644 revdep/library/sprtt/new/Rcpp/help/Rcpp.rdb create mode 100644 revdep/library/sprtt/new/Rcpp/help/Rcpp.rdx create mode 100644 revdep/library/sprtt/new/Rcpp/help/aliases.rds create mode 100644 revdep/library/sprtt/new/Rcpp/help/paths.rds create mode 100644 revdep/library/sprtt/new/Rcpp/html/00Index.html create mode 100644 revdep/library/sprtt/new/Rcpp/html/R.css create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Benchmark/Timer.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/DataFrame.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Dimension.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/DottedPair.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/DottedPairImpl.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Environment.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Extractor.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Fast.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Formula.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Function.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/InputParameter.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/InternalFunction.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/InternalFunctionWithStdFunction.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Interrupt.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Language.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Light create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Lighter create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Lightest create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Module.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Na_Proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Named.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Nullable.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Pairlist.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Promise.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/RNGScope.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/RObject.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Rcpp create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Reference.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Rmath.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/S4.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/StretchyList.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/String.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/StringTransformer.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Symbol.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/Vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/WeakReference.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/XPtr.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/algo.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/algorithm.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/bones/Date.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/bones/Datetime.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/bones/bones.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/bones/wrap_extra_steps.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/DataFrame.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/Date.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/Datetime.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/Dimension.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/DottedPairImpl.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/Environment.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/Rcpp_eval.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/S4.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/StretchyList.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/Vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/as.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/export.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/is.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/meat.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/message.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/module/Module.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/protection.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/api/meat/wrap.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/as.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/barrier.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/clone.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/complex.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/config.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/Date.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/Datetime.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/date_datetime.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/newDateVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/newDatetimeVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/oldDateVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/date_datetime/oldDatetimeVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/exceptions.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/exceptions/cpp11/exceptions.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/exceptions/cpp98/exceptions.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/exceptions_impl.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/DataFrame_generated.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/DottedPair__ctors.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/Function__operator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/InternalFunctionWithStdFunction_call.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/InternalFunction__ctors.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/Language__ctors.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/Pairlist__ctors.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/Vector__create.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/generated/grow__pairlist.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/grow.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/hash/IndexHash.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/hash/SelfHash.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/hash/hash.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/Exporter.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/GreedyVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/ListInitialization.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/NAComparator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/NAEquals.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/Proxy_Iterator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/SEXP_Iterator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/caster.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/converter.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/export.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/na.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/r_coerce.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/r_vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/wrap.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/internal/wrap_end.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/iostream/Rstreambuf.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/is.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/lang.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/longlong.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/cat.hpp create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/config.hpp create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/debug.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/dispatch.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/interface.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/macros.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/module.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/unroll.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/macros/xp.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/CppFunction.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_Add_Property.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_Field.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_Property.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_Constructor.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_CppFunction.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_CppMethod.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_Factory.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_Pointer_CppMethod.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_Pointer_method.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_class_constructor.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_class_factory.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_class_signature.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_ctor_signature.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_function.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_get_signature.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/Module_generated_method.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/class.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/class_Base.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/module/get_return_type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/platform/compiler.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/platform/solaris.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/print.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/protection/Armor.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/protection/Shelter.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/protection/Shield.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/protection/protection.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/AttributeProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/Binding.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/DottedPairProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/FieldProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/GenericProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/NamesProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/ProtectedProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/RObjectMethods.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/SlotProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/TagProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/proxy/proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/r/headers.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/r_cast.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/routines.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sprintf.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/beta.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/binom.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/cauchy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/chisq.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/dpq/dpq.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/dpq/macros.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/exp.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/f.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/gamma.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/geom.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/hyper.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/lnorm.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/logis.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/nbeta.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/nbinom.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/nbinom_mu.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/nchisq.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/nf.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/norm.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/nt.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/pois.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/random.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rbeta.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rbinom.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rcauchy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rchisq.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rexp.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rf.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rgamma.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rgeom.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rhyper.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rlnorm.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rlogis.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rnbinom.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rnbinom_mu.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rnchisq.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rnorm.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rpois.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rsignrank.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rt.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/runif.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rweibull.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/random/rwilcox.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/stats.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/t.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/unif.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/stats/weibull.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/storage/NoProtectStorage.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/storage/PreserveStorage.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/storage/storage.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/Range.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/block/SugarBlock_1.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/block/SugarBlock_2.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/block/SugarBlock_3.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/block/SugarMath.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/block/Vectorized_Math.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/block/block.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/Lazy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/all.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/any.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/cbind.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/clamp.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/complex.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/cummax.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/cummin.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/cumprod.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/cumsum.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/diff.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/duplicated.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/functions.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/head.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/ifelse.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/is_finite.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/is_infinite.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/is_na.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/is_nan.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/lapply.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/mapply.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/mapply/mapply_2.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/mapply/mapply_3.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/match.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/math.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/max.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/mean.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/median.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/min.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/na_omit.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/pmax.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/pmin.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/pow.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/range.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/rep.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/rep_each.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/rep_len.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/rev.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/rowSums.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/sample.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/sapply.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/sd.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/self_match.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/seq_along.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/setdiff.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/sign.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/strings/collapse.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/strings/strings.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/strings/trimws.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/sum.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/table.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/tail.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/unique.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/var.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/which_max.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/functions/which_min.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/SingleLogicalResult.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/and.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/can_have_na.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/is.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/logical.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/not.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/logical/or.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/as_vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/col.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/diag.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/lower_tri.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/matrix_functions.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/outer.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/row.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/tools.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/matrix/upper_tri.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/nona/nona.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/Comparator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/Comparator_With_One_Value.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/divides.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/logical_operators__Vector__Vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/logical_operators__Vector__primitive.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/minus.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/not.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/operators.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/plus.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/r_binary_op.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/times.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/operators/unary_minus.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/sets.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/sugar.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/sugar_forward.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/tools/iterator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/sugar/undoRmath.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/char_type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/enable_if.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/expands_to_logical.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/get_na.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/has_iterator.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/has_na.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/if_.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/init_type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/integral_constant.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_arithmetic.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_bool.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_const.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_convertible.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_eigen_base.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_finite.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_infinite.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_module_object.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_na.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_nan.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_pointer.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_primitive.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_reference.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_sugar_expression.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_trivial.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/is_wide_string.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/longlong.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/matrix_interface.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/module_wrap_traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/named_object.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/num2type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/one_type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/r_sexptype_traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/r_type_traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/remove_const.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/remove_const_and_reference.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/remove_reference.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/result_of.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/same_type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/storage_type.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/un_pointer.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/traits/wrap_type_traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/unwindProtect.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/utils/tinyformat.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/utils/tinyformat/tinyformat.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/00_forward_Vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/00_forward_proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/ChildVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/DimNameProxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/LazyVector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/ListOf.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/Matrix.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/MatrixBase.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/MatrixColumn.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/MatrixRow.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/RangeIndexer.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/SubMatrix.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/Subsetter.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/Vector.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/VectorBase.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/const_generic_proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/const_string_proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/converter.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/generic_proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/instantiation.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/no_init.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/string_proxy.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/swap.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/traits.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/Rcpp/vector/vector_from_string.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/RcppCommon.h create mode 100644 revdep/library/sprtt/new/Rcpp/include/doxygen/Examples.h create mode 100644 revdep/library/sprtt/new/Rcpp/libs/x64/Rcpp.dll create mode 100644 revdep/library/sprtt/new/Rcpp/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/Rcpp/prompt/module.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/Num.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/Rcpp_modules_examples.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/manual-page-stub.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/rcpp_hello_world.R create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/rcpp_hello_world.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/rcpp_hello_world.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/rcpp_hello_world.h create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/rcpp_hello_world_attributes.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/rcpp_module.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/stdVector.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/skeleton/zzz.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/bin/amd64/r-cran-testrcpppackage_0.1.0-1_amd64.deb create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/bin/i386/r-cran-testrcpppackage_0.1.0-1_i386.deb create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/DataFrame.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Environment.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Exceptions_nocall.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Function.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/InternalFunction.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/InternalFunctionCPP11.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/ListOf.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Matrix.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Module.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/RObject.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Reference.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/S4.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/String.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Subset.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/Vector.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/VectorOld.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/XPtr.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/algorithm.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/as.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/attributes.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/attributes.hpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/coerce.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/dates.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/dispatch.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/embeddedR.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/embeddedR2.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/exceptions.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/language.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/misc.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/modref.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/na.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/rcppversion.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/rmath.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/stack.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/stats.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/sugar.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/support.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/table.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/wrap.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/cpp/wstring.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/src/r-cran-testrcpppackage_0.1.0-1.diff.gz create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/src/r-cran-testrcpppackage_0.1.0-1.dsc create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/src/r-cran-testrcpppackage_0.1.0-1_amd64.changes create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/src/r-cran-testrcpppackage_0.1.0-1_amd64.deb create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/src/r-cran-testrcpppackage_0.1.0-1_i386.changes create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/src/r-cran-testrcpppackage_0.1.0-1_i386.deb create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppAttributePackage/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppAttributePackage/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppAttributePackage/src/rcpp_test.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/R/load.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/R/rcpp_hello_world.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/man/Rcpp_class_examples.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/man/rcpp_hello_world.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/man/testRcppClass-package.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/src/Num.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/src/init.c create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/src/rcpp_hello_world.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/src/rcpp_hello_world.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/src/rcpp_module.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/src/stdVector.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppClass/tests/classes.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/R/RcppExports.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/R/exporter.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/inst/include/testRcppInterfaceExporter.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/inst/include/testRcppInterfaceExporter_RcppExports.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/src/RcppExports.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/src/exporter.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceExporter/src/unwound.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/R/user.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/src/config.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/src/unwound.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/src/user.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppInterfaceUser/tests/tests.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/R/rcpp_hello_world.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/R/zzz.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/man/Rcpp_modules_examples.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/man/rcpp_hello_world.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/man/testRcppModule-package.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/src/Num.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/src/init.c create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/src/rcpp_hello_world.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/src/rcpp_hello_world.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/src/rcpp_module.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/src/stdVector.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppModule/tests/modules.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppPackage/DESCRIPTION create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppPackage/NAMESPACE create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppPackage/R/rcpp_hello_world.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppPackage/man/testRcppPackage-package.Rd create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppPackage/src/rcpp_hello_world.cpp create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/testRcppPackage/src/rcpp_hello_world.h create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_algorithm.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_as.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_attribute_package.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_attributes.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_binary_package.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_client_package.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_coerce.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_dataframe.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_date.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_dispatch.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_embedded_r.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_environments.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_exceptions.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_exceptions_nocall.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_expose_class.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_function.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_global_rostream.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_interface.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_internal_function.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_internal_function_cpp11.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_language.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_listof.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_matrix.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_misc.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_modref.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_module.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_module_client_package.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_na.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_packageversion.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_quickanddirty.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_rcpp_package_skeleton.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_reference.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_rmath.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_robject.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_s4.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_stack.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_stats.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_string.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_subset.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_sugar.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_sugar_var.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_support.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_system.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_table.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_vector.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_vector_old.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_wrap.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_wstring.R create mode 100644 revdep/library/sprtt/new/Rcpp/tinytest/test_xptr.R create mode 100644 revdep/library/sprtt/new/StanHeaders/CITATION create mode 100644 revdep/library/sprtt/new/StanHeaders/DESCRIPTION create mode 100644 revdep/library/sprtt/new/StanHeaders/INDEX create mode 100644 revdep/library/sprtt/new/StanHeaders/LICENSE create mode 100644 revdep/library/sprtt/new/StanHeaders/MD5 create mode 100644 revdep/library/sprtt/new/StanHeaders/NAMESPACE create mode 100644 revdep/library/sprtt/new/StanHeaders/R/StanHeaders create mode 100644 revdep/library/sprtt/new/StanHeaders/R/StanHeaders.rdb create mode 100644 revdep/library/sprtt/new/StanHeaders/R/StanHeaders.rdx create mode 100644 revdep/library/sprtt/new/StanHeaders/help/AnIndex create mode 100644 revdep/library/sprtt/new/StanHeaders/help/StanHeaders.rdb create mode 100644 revdep/library/sprtt/new/StanHeaders/help/StanHeaders.rdx create mode 100644 revdep/library/sprtt/new/StanHeaders/help/aliases.rds create mode 100644 revdep/library/sprtt/new/StanHeaders/help/paths.rds create mode 100644 revdep/library/sprtt/new/StanHeaders/html/00Index.html create mode 100644 revdep/library/sprtt/new/StanHeaders/html/R.css create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes_bandpre.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes_bbdpre.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes_diag.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes_direct.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes_ls.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/cvodes/cvodes_spils.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/idas/idas.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/idas/idas_bbdpre.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/idas/idas_direct.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/idas/idas_ls.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/idas/idas_spils.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/kinsol/kinsol.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/kinsol/kinsol_bbdpre.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/kinsol/kinsol_direct.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/kinsol/kinsol_ls.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/kinsol/kinsol_spils.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_cuda.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_hip.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_manyvector.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_mpimanyvector.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_mpiplusx.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_openmp.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_openmpdev.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_parallel.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_parhyp.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_petsc.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_pthreads.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_raja.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_serial.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/nvector_trilinos.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/trilinos/SundialsTpetraVectorInterface.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/nvector/trilinos/SundialsTpetraVectorKernels.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/analyze/mcmc/autocovariance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/analyze/mcmc/compute_effective_sample_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/analyze/mcmc/compute_potential_scale_reduction.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/analyze/mcmc/split_chains.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/callbacks/interrupt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/callbacks/logger.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/callbacks/stream_logger.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/callbacks/stream_writer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/callbacks/tee_writer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/callbacks/writer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/command/stanc_helper.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/array_var_context.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/chained_var_context.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/cmd_line.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/dump.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/empty_var_context.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/ends_with.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/is_whitespace.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/program_reader.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/random_var_context.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/read_line.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/reader.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/stan_csv_reader.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/starts_with.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/trim_spaces.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/util.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/validate_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/validate_zero_buf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/var_context.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/io/writer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_is_data_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_is_data_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_order_id_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_order_id_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_set_is_data_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_set_is_data_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_total_dims_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_total_dims_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/bare_type_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_bounds_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_bounds_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_is_specialized_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_is_specialized_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_offset_multiplier_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_offset_multiplier_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_params_total_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/block_type_params_total_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/ends_with.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/ends_with_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/expression_bare_type_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/expression_bare_type_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/fun_name_exists.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/fun_name_exists_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/generate_expression.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/get_ccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/get_ccdf_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/get_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/get_cdf_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/get_prob_fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/get_prob_fun_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_ccdf_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_ccdf_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_cdf_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_cdf_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_lp_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_lp_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_non_param_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_non_param_var_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_non_param_var_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_non_param_var_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_prob_fun_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_prob_fun_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_rng_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_rng_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_var_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_var_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/has_var_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/indexed_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/indexed_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/infer_type_indexing.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/infer_type_indexing_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_assignable.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_assignable_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_multi_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_multi_index_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_multi_index_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_multi_index_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_nil.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_nil_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_nil_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_nil_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_no_op_statement_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_no_op_statement_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_nonempty.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_nonempty_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_space.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_space_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_user_defined.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_user_defined_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_user_defined_prob_function.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/is_user_defined_prob_function_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/num_index_op_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/num_index_op_dims_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/print_scope.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/print_scope_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/promote_primitive.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/promote_primitive_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/returns_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/returns_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/returns_type_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/returns_type_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/strip_ccdf_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/strip_ccdf_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/strip_cdf_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/strip_cdf_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/strip_prob_fun_suffix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/strip_prob_fun_suffix_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/template.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_occurs_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_occurs_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_type_arg1_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_type_arg1_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_type_arg2_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_type_arg2_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_type_name_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/var_type_name_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_bare_expr_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_bare_expr_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_block_var_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_block_var_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_expression_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_expression_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_idx_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/fun/write_idx_vis_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/nil.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/algebra_solver.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/algebra_solver_control.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/algebra_solver_control_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/algebra_solver_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/array_expr.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/array_expr_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/assgn.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/assgn_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/binary_op.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/binary_op_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/block_var_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/block_var_decl_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/break_continue_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/break_continue_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/conditional_op.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/conditional_op_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/conditional_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/conditional_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/distribution.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/double_literal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/double_literal_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/expression.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/expression_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/for_array_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/for_array_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/for_matrix_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/for_matrix_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/for_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/for_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/fun_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/function_decl_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/function_decl_def_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/function_decl_defs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/function_decl_defs_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/increment_log_prob_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/increment_log_prob_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/index_op.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/index_op_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/index_op_sliced.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/index_op_sliced_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/int_literal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/int_literal_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/integrate_1d.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/integrate_1d_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/integrate_ode.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/integrate_ode_control.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/integrate_ode_control_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/integrate_ode_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/lb_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/lb_idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/local_var_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/local_var_decl_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/lub_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/lub_idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/map_rect.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/map_rect_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/matrix_expr.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/matrix_expr_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/multi_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/multi_idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/no_op_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/offset_multiplier.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/offset_multiplier_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/omni_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/omni_idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/print_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/print_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/printable.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/printable_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/program.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/program_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/range.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/range_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/reject_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/reject_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/return_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/return_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/row_vector_expr.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/row_vector_expr_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/sample.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/sample_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/statements.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/statements_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/ub_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/ub_idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/unary_op.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/unary_op_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/uni_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/uni_idx_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/var_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/var_decl_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/variable.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/variable_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/variable_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/variable_dims_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/while_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/node/while_statement_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/origin_block.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/scope.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/scope_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/sigs/function_signature_t.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/sigs/function_signatures.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/sigs/function_signatures_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/bare_array_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/bare_array_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/bare_expr_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/bare_expr_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/block_array_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/block_array_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/block_var_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/block_var_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/cholesky_factor_corr_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/cholesky_factor_corr_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/cholesky_factor_cov_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/cholesky_factor_cov_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/corr_matrix_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/corr_matrix_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/cov_matrix_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/cov_matrix_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/double_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/double_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/double_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/double_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/ill_formed_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/ill_formed_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/int_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/int_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/int_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/int_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/local_array_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/local_array_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/local_var_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/local_var_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/matrix_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/matrix_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/matrix_local_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/matrix_local_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/matrix_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/matrix_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/order_id.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/ordered_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/ordered_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/positive_ordered_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/positive_ordered_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/row_vector_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/row_vector_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/row_vector_local_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/row_vector_local_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/row_vector_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/row_vector_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/simplex_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/simplex_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/unit_vector_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/unit_vector_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/vector_block_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/vector_block_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/vector_local_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/vector_local_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/vector_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/vector_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/void_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/type/void_type_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/variable_map.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast/variable_map_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/ast_def.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/compile_functions.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/compiler.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/function_signatures.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/constants.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/expression_visgen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/fun_scalar_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_arg_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_array_builder_adds.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_bare_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_block_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_catch_throw_located.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_class_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_class_decl_end.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_comment.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_constrained_param_names_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_constructor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_cpp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_data_var_ctor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_data_var_init.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_destructor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_dims_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_expression.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_fun_inst_templ_params.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_arguments.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_body.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_functor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_inline_return_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_instantiation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_instantiation_body.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_instantiation_name.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_instantiations.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_name.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_function_template_parameters.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_functions.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_functor_arguments.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_globals.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_idx_user.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_idxs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_idxs_user.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_include.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_includes.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_indent.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_indexed_expr.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_indexed_expr_user.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_initializer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_line_number.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_local_var_decl_inits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_log_prob.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_member_var_decls.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_member_var_decls_all.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_model_compile_info_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_model_name_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_model_typedef.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_namespace_end.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_namespace_start.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_param_names_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_param_names_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_param_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_printable.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_private_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_program_reader_fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_propto_default_function.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_propto_default_function_body.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_public_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_quoted_expression.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_quoted_string.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_read_transform_params.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_real_var_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_register_mpi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_set_param_ranges.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_standalone_functions.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_statements.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_transform_inits_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_try.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_typedef.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_typedefs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_unconstrained_param_names_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_unconstrained_param_names_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_using.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_using_namespace.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_usings.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_usings_standalone_functions.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_validate_block_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_validate_context_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_validate_nonnegative.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_validate_tparam_inits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_validate_var_decl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_validate_var_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_var_constructor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_var_fill_define.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_version_comment.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_void_statement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_write_array_method.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/generate_write_block_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/get_block_var_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/get_typedef_var_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/get_verbose_var_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/idx_user_visgen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/idx_visgen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/is_numbered_statement_vis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/printable_visgen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/statement_visgen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/visgen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_begin_all_dims_col_maj_loop.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_begin_all_dims_row_maj_loop.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_begin_array_dims_loop.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_begin_param_elements_loop.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_constraints_fn.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_end_loop.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_nested_resize_loop_begin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_resize_var_idx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_var_decl_arg.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_var_decl_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_var_idx_all_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_var_idx_all_dims_msg.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/generator/write_var_idx_array_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/bare_type_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/bare_type_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/bare_type_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/block_var_decls_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/block_var_decls_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/block_var_decls_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/common_adaptors_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/expression07_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/expression07_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/expression07_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/expression_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/expression_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/expression_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/functions_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/functions_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/functions_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/indexes_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/indexes_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/indexes_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/iterator_typedefs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/local_var_decls_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/local_var_decls_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/local_var_decls_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/program_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/program_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/program_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/semantic_actions.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/semantic_actions_def.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/statement_2_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/statement_2_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/statement_2_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/statement_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/statement_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/statement_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/term_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/term_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/term_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/whitespace_grammar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/whitespace_grammar_def.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/grammars/whitespace_grammar_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/parser.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/lang/rethrow_located.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/base_adaptation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/base_adapter.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/base_mcmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/chains.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/covar_adaptation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/fixed_param_sampler.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/base_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/base_hamiltonian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/dense_e_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/dense_e_point.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/diag_e_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/diag_e_point.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/ps_point.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/softabs_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/softabs_point.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/unit_e_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/hamiltonians/unit_e_point.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/integrators/base_integrator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/integrators/base_leapfrog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/integrators/expl_leapfrog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/integrators/impl_leapfrog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/adapt_dense_e_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/adapt_diag_e_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/adapt_softabs_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/adapt_unit_e_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/base_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/dense_e_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/diag_e_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/softabs_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts/unit_e_nuts.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/adapt_dense_e_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/adapt_diag_e_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/adapt_unit_e_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/base_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/dense_e_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/diag_e_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/nuts_classic/unit_e_nuts_classic.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/adapt_dense_e_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/adapt_diag_e_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/adapt_softabs_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/adapt_unit_e_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/base_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/dense_e_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/diag_e_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/softabs_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static/unit_e_static_hmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/adapt_dense_e_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/adapt_diag_e_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/adapt_softabs_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/adapt_unit_e_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/base_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/dense_e_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/diag_e_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/softabs_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/static_uniform/unit_e_static_uniform.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/adapt_dense_e_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/adapt_diag_e_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/adapt_softabs_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/adapt_unit_e_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/base_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/dense_e_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/diag_e_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/softabs_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/hmc/xhmc/unit_e_xhmc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/sample.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/stepsize_adaptation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/stepsize_adapter.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/stepsize_covar_adapter.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/stepsize_var_adapter.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/var_adaptation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/mcmc/windowed_adaptation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/finite_diff_grad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/grad_hess_log_prob.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/grad_tr_mat_times_hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/gradient.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/gradient_dot_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/hessian_times_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/access_helpers.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/deep_copy.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/index_list.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/lvalue.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/lvalue_varmat.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/rvalue.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/rvalue_at.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/rvalue_index_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/rvalue_return.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/indexing/rvalue_varmat.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/log_prob_grad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/log_prob_propto.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/model_base.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/model_base_crtp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/model_functional.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/model_header.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/prob_grad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/standalone_functions_header.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/model/test_gradients.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/optimization/bfgs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/optimization/bfgs_linesearch.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/optimization/bfgs_update.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/optimization/lbfgs_update.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/optimization/newton.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/diagnose/defaults.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/diagnose/diagnose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/error_codes.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/experimental/advi/defaults.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/experimental/advi/fullrank.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/experimental/advi/meanfield.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/optimize/bfgs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/optimize/defaults.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/optimize/lbfgs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/optimize/newton.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/defaults.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/fixed_param.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_nuts_dense_e.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_nuts_dense_e_adapt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_nuts_diag_e.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_nuts_diag_e_adapt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_nuts_unit_e.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_nuts_unit_e_adapt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_static_dense_e.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_static_dense_e_adapt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_static_diag_e.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_static_diag_e_adapt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_static_unit_e.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/hmc_static_unit_e_adapt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/sample/standalone_gqs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/create_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/create_unit_e_dense_inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/create_unit_e_diag_inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/experimental_message.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/generate_transitions.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/gq_writer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/initialize.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/mcmc_writer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/read_dense_inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/read_diag_inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/run_adaptive_sampler.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/run_sampler.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/validate_dense_inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/services/util/validate_diag_inv_metric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/variational/advi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/variational/base_family.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/variational/families/normal_fullrank.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/variational/families/normal_meanfield.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/variational/print_progress.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/src/stan/version.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/fvar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_addition.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_division.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_greater_than.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_greater_than_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_less_than.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_less_than_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_logical_and.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_logical_or.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_multiplication.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_not_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_subtraction.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_unary_minus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_unary_not.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/operator_unary_plus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/std_complex.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/std_iterator_traits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/core/std_numeric_limits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/Eigen_NumTraits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/Phi_approx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/abs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/acos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/acosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/arg.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/asin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/asinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/atan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/atan2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/atanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/bessel_second_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/binary_log_loss.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/cbrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/ceil.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/conj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/cos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/cosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/determinant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/digamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/erf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/erfc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/exp2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/expm1.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/fabs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/falling_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/fdim.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/floor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/fma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/fmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/fmin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/fmod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/gamma_p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/gamma_q.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/grad_inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/hypot.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inv_Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inv_cloglog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inv_sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inv_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/inverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/is_inf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/is_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/lambert_w.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/lbeta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/ldexp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/lgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/lmgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log10.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log1m.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log1m_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log1m_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log1p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log1p_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_determinant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_diff_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_falling_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_inv_logit_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_mix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_rising_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/log_sum_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/mdivide_left.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/mdivide_left_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/mdivide_left_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/mdivide_right.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/mdivide_right_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/modified_bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/modified_bessel_second_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/multiply_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/multiply_lower_tri_self_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/norm.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/owens_t.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/polar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/pow.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/primitive_value.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/proj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/quad_form_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/read_fvar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/rising_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/round.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/sin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/sinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/tan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/tanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/tcrossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/tgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/to_fvar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/trace_quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/trigamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/trunc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/typedefs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/unit_vector_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/value_of.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/fun/value_of_rec.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor/apply_scalar_unary.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor/gradient.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor/hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor/jacobian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor/operands_and_partials.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/functor/reduce_sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/fwd/meta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/memory/stack_alloc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/fun/typedefs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/derivative.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/finite_diff_grad_hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/finite_diff_grad_hessian_auto.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/grad_hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/grad_tr_mat_times_hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/gradient_dot_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/hessian_times_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/functor/partial_derivative.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/mat.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/mix/meta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/buffer_types.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/cholesky_decompose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/copy.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_diagonal_zeros.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_invalid_matrix_view.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_mat_size_one.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_opencl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_symmetric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/err/check_triangular.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/is_constant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/append.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/as_column_vector_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/as_operation_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/binary_operation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/block_zero_based.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/broadcast.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/calc_if.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/check_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/colwise_reduction.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/common_return_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/compound_assignments.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/constant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/diagonal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/elt_function_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/evaluate_into.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/get_kernel_source_for_evaluating_into.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/holder_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/indexing.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/load.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/matrix_cl_conversion.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/matrix_vector_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/multi_result_kernel.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/name_generator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/operation_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/operation_cl_lhs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/optional_broadcast.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/rowwise_reduction.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/select.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/type_str.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernel_generator/unary_operation_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/add.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/batch_identity.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/categorical_logit_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/check_diagonal_zeros.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/check_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/check_symmetric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/cholesky_decompose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/copy.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/Phi_approx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/binomial_coefficient_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/digamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/inv_Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/inv_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/lbeta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/lgamma_stirling.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/lgamma_stirling_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log1m.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log1m_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log1m_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log1p_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log_diff_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/log_inv_logit_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/multiply_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/device_functions/trigamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/diag_inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/divide_columns.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/fill_strict_tri.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/gp_exp_quad_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/helpers.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/inv_lower_tri_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/matrix_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/multiply_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/neg_binomial_2_log_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/neg_rect_lower_tri_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/ordered_logistic_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/pack.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/rep_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/scalar_mul_diagonal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/triangular_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/kernels/unpack.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/matrix_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/matrix_cl_view.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/multiply_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/opencl_context.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/pinned_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/plain_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/add_diag.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/bernoulli_logit_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/bernoulli_logit_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/bernoulli_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/beta_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/beta_proportion_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/binomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/block.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/categorical_logit_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/cauchy_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/chi_square_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/cholesky_decompose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/col.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/cols.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/columns_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/columns_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/crossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/diag_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/diag_post_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/diag_pre_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/distance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/divide_columns.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/double_exponential_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/exp_mod_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/exponential_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/frechet_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/gamma_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/gp_exp_quad_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/gumbel_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/head.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/inv_chi_square_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/inv_cloglog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/inv_gamma_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/inv_sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/logistic_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/lognormal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/mdivide_left_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/mdivide_right_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/mean.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/neg_binomial_2_log_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/neg_binomial_2_log_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/neg_binomial_2_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/neg_binomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/normal_id_glm_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/num_elements.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/ordered_logistic_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/pareto_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/pareto_type_2_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/poisson_log_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/poisson_log_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/poisson_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rayleigh_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rep_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rep_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rep_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/row.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rows.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rows_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/rows_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/scaled_inv_chi_square_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/segment.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/sign.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/skew_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/squared_distance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/std_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/student_t_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/sub_col.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/sub_row.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/tail.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/tcrossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/uniform_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/prim/weibull_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/ref_type_for_opencl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/Phi_approx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/acos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/acosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/add.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/add_diag.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/adjoint_results.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/arena_matrix_cl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/arena_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/as_column_vector_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/asin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/asinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/atan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/atanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/block.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/cbrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/ceil.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/cholesky_decompose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/columns_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/columns_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/copy.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/cos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/cosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/crossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/diag_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/diag_post_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/diag_pre_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/diagonal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/digamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/elt_divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/elt_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/erf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/erfc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/exp2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/expm1.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/fabs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/floor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/hypot.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/inv_Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/inv_cloglog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/inv_sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/inv_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/lbeta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/ldexp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/lgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log10.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log1m.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log1m_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log1m_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log1p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log1p_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log_diff_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/log_inv_logit_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/mdivide_left_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/mdivide_right_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/multiply_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/operands_and_partials.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/operator_unary_minus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/operator_unary_plus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/pow.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/round.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/rows_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/rows_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/sin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/sinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/squared_distance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/subtract.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/tan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/tanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/tcrossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/tgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/to_arena.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/trunc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/rev/vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/scalar_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/stringify.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/to_ref_for_opencl.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/tri_inverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/triangular_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/value_type.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/opencl/zeros_strict_tri.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/arr/fun/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/complex_base.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/init_threadpool_tbb.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_addition.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_division.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_equal_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_minus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_multiplication.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_not_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_plus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/core/operator_subtraction.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/eigen_plugins.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_2F1_converges.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_3F2_converges.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_bounded.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_cholesky_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_cholesky_factor_corr.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_column_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_consistent_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_consistent_sizes.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_consistent_sizes_mvt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_corr_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_cov_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_finite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_flag_sundials.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_greater.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_greater_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_ldlt_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_less.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_less_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_lower_triangular.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_matching_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_matching_sizes.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_multiplicable.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_nonnegative.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_nonzero_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_not_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_ordered.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_pos_definite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_pos_semidefinite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_positive.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_positive_finite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_positive_ordered.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_range.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_row_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_simplex.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_size_match.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_sorted.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_std_vector_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_symmetric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_unit_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/check_vector_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/constraint_tolerance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/domain_error.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/domain_error_vec.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/elementwise_check.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/hmm_check.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/invalid_argument.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/invalid_argument_vec.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_cholesky_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_cholesky_factor_corr.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_column_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_corr_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_ldlt_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_less_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_lower_triangular.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_mat_finite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_matching_dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_matching_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_nonzero_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_not_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_ordered.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_pos_definite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_positive.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_scal_finite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_size_match.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_symmetric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/is_unit_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/out_of_range.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/system_error.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/throw_domain_error.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/throw_domain_error_vec.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/err/validate_non_negative_index.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/Eigen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/F32.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/LDLT_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/MatrixExponential.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/Phi_approx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/abs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/accumulator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/acos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/acosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/add.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/add_diag.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/append_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/append_col.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/append_row.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/arg.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/array_builder.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/as_array_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/as_bool.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/as_column_vector_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/as_value_array_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/as_value_column_array_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/as_value_column_vector_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/asin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/asinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/assign.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/atan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/atanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/autocorrelation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/autocovariance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/bessel_second_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/binary_log_loss.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/binomial_coefficient_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/block.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/boost_policy.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cbrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ceil.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/chol2inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cholesky_corr_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cholesky_corr_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cholesky_decompose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cholesky_factor_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cholesky_factor_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/choose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/col.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cols.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/columns_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/columns_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/conj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/constants.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/copysign.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/corr_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/corr_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/corr_matrix_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/corr_matrix_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cov_exp_quad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cov_matrix_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cov_matrix_constrain_lkj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cov_matrix_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cov_matrix_free_lkj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/crossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/csr_extract_u.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/csr_extract_v.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/csr_extract_w.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/csr_matrix_times_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/csr_to_dense_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/csr_u_to_z.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/cumulative_sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/determinant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/diag_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/diag_post_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/diag_pre_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/diagonal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/digamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/distance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/divide_columns.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/dot.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/eigen_comparisons.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/eigenvalues.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/eigenvalues_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/eigenvectors.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/eigenvectors_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/elt_divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/elt_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/erf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/erfc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/eval.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/exp2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/expm1.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fabs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/factor_U.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/factor_cov_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/falling_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fdim.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fill.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/finite_diff_stepsize.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/floor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fmin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/fmod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gamma_p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gamma_q.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/generalized_inverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/get.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/get_base1.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/get_base1_lhs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/get_lp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gp_dot_prod_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gp_exp_quad_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gp_exponential_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gp_matern32_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gp_matern52_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/gp_periodic_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/grad_2F1.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/grad_F32.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/grad_inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/grad_reg_inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/grad_reg_inc_gamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/grad_reg_lower_inc_gamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/head.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/hypot.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/i_times.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/identity_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/identity_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/identity_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/if_else.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/imag.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inc_beta_dda.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inc_beta_ddb.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inc_beta_ddz.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/initialize.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/initialize_fill.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/int_step.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inv_Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inv_cloglog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inv_sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inv_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inverse_softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/inverse_spd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/is_any_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/is_inf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/is_integer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/is_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/is_nonpositive_integer.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/is_uninitialized.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/isfinite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/isinf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/isnan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/isnormal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lambert_w.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lb_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lb_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lbeta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ldexp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lgamma_stirling.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lgamma_stirling_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/linspaced_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/linspaced_int_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/linspaced_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/linspaced_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lmgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log10.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log1m.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log1m_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log1m_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log1p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log1p_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_determinant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_determinant_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_determinant_spd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_diff_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_falling_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_inv_logit_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_mix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_modified_bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_rising_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/log_sum_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logb.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_and.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_eq.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_gt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_gte.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_lt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_lte.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_negation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_neq.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logical_or.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lub_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/lub_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/make_nu.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/matrix_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/matrix_exp_2x2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/matrix_exp_action_handler.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/matrix_exp_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/matrix_exp_pade.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/matrix_power.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/max.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/max_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/max_size_mvt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_left.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_left_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_left_spd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_left_tri.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_left_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_right.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_right_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_right_spd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_right_tri.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mdivide_right_tri_low.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/mean.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/min.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/minus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/modified_bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/modified_bessel_second_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/modulus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/multiply_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/multiply_lower_tri_self_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/norm.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/num_elements.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/offset_multiplier_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/offset_multiplier_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/one_hot_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/one_hot_int_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/one_hot_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/one_hot_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ones_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ones_int_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ones_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ones_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ordered_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ordered_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/owens_t.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/plus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/poisson_binomial_log_probs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/polar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/positive_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/positive_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/positive_ordered_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/positive_ordered_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/pow.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/primitive_value.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/prob_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/prob_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/prod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/proj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/promote_elements.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/promote_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/pseudo_eigenvalues.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/pseudo_eigenvectors.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/qr_Q.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/qr_R.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/qr_thin_Q.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/qr_thin_R.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/quad_form_diag.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/quad_form_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rank.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/read_corr_L.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/read_corr_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/read_cov_L.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/read_cov_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/real.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rep_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rep_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rep_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rep_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/resize.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/reverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rising_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/round.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/row.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rows.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rows_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/rows_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/scalar_seq_view.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/scalbn.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/scale_matrix_exp_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/scaled_add.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/segment.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sign.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/signbit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/simplex_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/simplex_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/singular_values.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/size_mvt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/size_zero.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sort_asc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sort_desc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sort_indices.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sort_indices_asc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sort_indices_desc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/squared_distance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/stan_print.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/step.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sub_col.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sub_row.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/subtract.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/svd_U.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/svd_V.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/symmetrize_from_lower_tri.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/tail.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/tan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/tanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/tcrossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/tgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/to_array_1d.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/to_array_2d.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/to_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/to_ref.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/to_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/to_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trace.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trace_gen_inv_quad_form_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trace_gen_quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trace_inv_quad_form_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trace_quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trigamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/trunc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/typedefs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ub_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/ub_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/uniform_simplex.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/unit_vector_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/unit_vector_free.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/unitspaced_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/value_of.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/value_of_rec.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/variance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/vec_concat.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/vector_seq_view.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/welford_covar_estimator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/welford_var_estimator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/zeros_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/zeros_int_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/zeros_row_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/fun/zeros_vector.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/apply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/apply_scalar_binary.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/apply_scalar_unary.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/apply_vector_unary.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/broadcast_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/coupled_ode_system.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/finite_diff_gradient.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/finite_diff_gradient_auto.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/finite_diff_hessian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/finite_diff_hessian_auto.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/finite_diff_hessian_helper.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/for_each.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/integrate_1d.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/integrate_ode_rk45.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/integrate_ode_std_vector_interface_adapter.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/map_rect.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/map_rect_combine.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/map_rect_concurrent.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/map_rect_mpi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/map_rect_reduce.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/mpi_cluster.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/mpi_cluster_inst.cpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/mpi_command.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/mpi_distributed_apply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/mpi_parallel_call.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/ode_rk45.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/ode_store_sensitivities.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/operands_and_partials.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/reduce_sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/functor/reduce_sum_static.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/err/check_ldlt_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/err/check_symmetric.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/Eigen.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/LDLT_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/autocorrelation.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/autocovariance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/csr_extract_u.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/csr_extract_v.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/csr_extract_w.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/log_determinant_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/mean.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/trace_inv_quad_form_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/mat/fun/variance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/meta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_logit_glm_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_logit_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_logit_glm_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_logit_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_logit_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_logit_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/bernoulli_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_binomial_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_proportion_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/beta_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_logit_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_logit_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/binomial_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_logit_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_logit_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_logit_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_logit_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/categorical_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/cauchy_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/chi_square_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/dirichlet_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/dirichlet_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/dirichlet_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/dirichlet_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/discrete_range_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/double_exponential_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exp_mod_normal_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/exponential_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/frechet_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gamma_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gaussian_dlm_obs_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gaussian_dlm_obs_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gaussian_dlm_obs_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/gumbel_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/hmm_hidden_state_prob.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/hmm_latent_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/hmm_marginal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/hypergeometric_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/hypergeometric_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/hypergeometric_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_chi_square_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_gamma_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_wishart_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_wishart_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/inv_wishart_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_corr_cholesky_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_corr_cholesky_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_corr_cholesky_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_corr_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_corr_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_corr_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_cov_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lkj_cov_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/logistic_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/lognormal_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/matrix_normal_prec_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/matrix_normal_prec_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/matrix_normal_prec_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_gp_cholesky_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_gp_cholesky_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_gp_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_gp_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_cholesky_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_cholesky_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_cholesky_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_prec_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_prec_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_prec_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_normal_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_student_t_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_student_t_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multi_student_t_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multinomial_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multinomial_logit_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multinomial_logit_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multinomial_logit_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multinomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/multinomial_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_log_glm_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_log_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_log_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_log_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_log_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_2_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/neg_binomial_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_id_glm_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_id_glm_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_sufficient_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/normal_sufficient_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_logistic_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_logistic_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_logistic_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_logistic_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_probit_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_probit_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/ordered_probit_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/pareto_type_2_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_binomial_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_binomial_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_binomial_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_binomial_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_log_glm_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_log_glm_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_log_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_log_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_log_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_lpmf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/poisson_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/rayleigh_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/scaled_inv_chi_square_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/skew_normal_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/std_normal_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/student_t_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/uniform_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/von_mises_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/von_mises_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/von_mises_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/von_mises_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/von_mises_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/von_mises_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_ccdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_cdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_cdf_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_lccdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_lcdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/weibull_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/wiener_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/wiener_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/wishart_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/wishart_lpdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/prob/wishart_rng.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal/err/check_finite.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal/err/check_greater_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal/err/check_nonnegative.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal/err/check_not_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal/err/check_positive.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/prim/scal/err/check_size_match.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/Eigen_NumTraits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/accumulate_adjoints.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/arena_allocator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/arena_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/autodiffstackstorage.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/build_vari_array.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/callback_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/chainable_alloc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/chainable_object.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/chainablestack.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/count_vars.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/ddv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/deep_copy_vars.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/dv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/dvd_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/dvv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/empty_nested.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/gevv_vvv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/grad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/init_chainablestack.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/matrix_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/nested_rev_autodiff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/nested_size.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_addition.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_divide_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_division.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_greater_than.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_greater_than_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_less_than.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_less_than_or_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_logical_and.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_logical_or.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_minus_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_multiplication.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_multiply_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_not_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_plus_equal.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_subtraction.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_unary_decrement.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_unary_increment.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_unary_negative.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_unary_not.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/operator_unary_plus.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/precomp_v_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/precomp_vv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/precomp_vvv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/precomputed_gradients.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/print_stack.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/profiling.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/read_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/recover_memory.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/recover_memory_nested.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/reverse_pass_callback.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/save_varis.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/scoped_chainablestack.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/set_zero_all_adjoints.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/set_zero_all_adjoints_nested.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/start_nested.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/std_complex.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/std_isinf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/std_isnan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/std_iterator_traits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/std_numeric_limits.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/stored_gradient_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/typedefs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/v_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vd_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vdd_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vdv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vector_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vvd_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/vvv_vari.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/core/zero_adjoints.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/LDLT_factor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/Phi_approx.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/abs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/acos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/acosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/adjoint_of.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/arg.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/as_array_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/as_bool.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/as_column_vector_or_scalar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/asin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/asinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/atan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/atan2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/atanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/bessel_second_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/binary_log_loss.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cbrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/ceil.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cholesky_corr_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cholesky_decompose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cholesky_factor_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/columns_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/columns_dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/conj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/corr_matrix_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cos.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cosh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cov_exp_quad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cov_matrix_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/cov_matrix_constrain_lkj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/determinant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/digamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/dims.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/dot_self.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/eigenvalues_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/eigenvectors_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/elt_divide.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/elt_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/erf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/erfc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/exp2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/expm1.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fabs.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/falling_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fdim.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fill.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/floor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fmin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/fmod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/from_var_value.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/gamma_p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/gamma_q.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/generalized_inverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/gp_exp_quad_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/gp_periodic_cov.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/grad.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/grad_inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/hypot.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/if_else.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inc_beta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/initialize_fill.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/initialize_variable.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inv.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inv_Phi.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inv_cloglog.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inv_sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inv_square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/inverse.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/is_inf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/is_nan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/is_uninitialized.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/lambert_w.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/lbeta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/ldexp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/lgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/lmgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log10.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log1m.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log1m_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log1m_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log1p.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log1p_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log2.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_determinant.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_determinant_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_determinant_spd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_diff_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_falling_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_inv_logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_inv_logit_diff.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_mix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_rising_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/log_sum_exp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/logit.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/matrix_exp_multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/matrix_power.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/mdivide_left.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/mdivide_left_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/mdivide_left_spd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/mdivide_left_tri.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/modified_bessel_first_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/modified_bessel_second_kind.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/multiply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/multiply_log.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/multiply_lower_tri_self_transpose.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/norm.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/ordered_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/owens_t.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/polar.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/positive_ordered_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/pow.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/primitive_value.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/proj.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/quad_form_sym.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/read_corr_L.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/read_corr_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/read_cov_L.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/read_cov_matrix.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/rising_factorial.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/round.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/rows_dot_product.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/sd.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/simplex_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/sin.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/singular_values.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/sinh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/softmax.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/sqrt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/square.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/squared_distance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/stan_print.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/step.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/svd_U.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/svd_V.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/tan.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/tanh.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/tcrossprod.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/tgamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/to_arena.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/to_var.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/to_var_value.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trace.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trace_gen_inv_quad_form_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trace_gen_quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trace_inv_quad_form_ldlt.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trace_quad_form.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trigamma.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/trunc.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/unit_vector_constrain.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/value_of.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/value_of_rec.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/fun/variance.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/adj_jac_apply.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/algebra_solver_fp.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/algebra_solver_newton.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/algebra_solver_powell.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/algebra_system.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/apply_scalar_unary.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/apply_vector_unary.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/coupled_ode_system.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/cvodes_integrator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/cvodes_utils.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/gradient.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/idas_forward_system.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/idas_integrator.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/idas_system.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/integrate_1d.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/integrate_dae.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/integrate_ode_adams.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/integrate_ode_bdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/jacobian.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/kinsol_data.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/kinsol_solve.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/map_rect_concurrent.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/map_rect_reduce.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/ode_adams.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/ode_bdf.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/ode_store_sensitivities.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/operands_and_partials.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/functor/reduce_sum.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/mat.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/rev/meta.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan/math/version.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/stan_sundials_printf_override.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_band.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_config.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_config.in create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_cuda_policies.hpp create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_dense.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_direct.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_export.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_fconfig.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_fconfig.in create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_fnvector.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_futils.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_iterative.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_lapack.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_linearsolver.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_math.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_matrix.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_memory.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_mpi_types.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_nonlinearsolver.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_nvector.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_nvector_senswrapper.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_types.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_version.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials/sundials_xbraid.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sundials_debug.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_band.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_cusolversp_batchqr.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_dense.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_klu.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_lapackband.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_lapackdense.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_pcg.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_spbcgs.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_spfgmr.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_spgmr.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_sptfqmr.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_superludist.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunlinsol/sunlinsol_superlumt.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmatrix/sunmatrix_band.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmatrix/sunmatrix_cusparse.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmatrix/sunmatrix_dense.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmatrix/sunmatrix_slunrloc.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmatrix/sunmatrix_sparse.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmemory/sunmemory_cuda.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunmemory/sunmemory_hip.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunnonlinsol/sunnonlinsol_fixedpoint.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunnonlinsol/sunnonlinsol_newton.h create mode 100644 revdep/library/sprtt/new/StanHeaders/include/sunnonlinsol/sunnonlinsol_petscsnes.h create mode 100644 revdep/library/sprtt/new/StanHeaders/libs/x64/StanHeaders.dll create mode 100644 revdep/library/sprtt/new/StanHeaders/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/StanHeaders/stanc.js create mode 100644 revdep/library/sprtt/new/digest/DESCRIPTION create mode 100644 revdep/library/sprtt/new/digest/GPL-2 create mode 100644 revdep/library/sprtt/new/digest/INDEX create mode 100644 revdep/library/sprtt/new/digest/MD5 create mode 100644 revdep/library/sprtt/new/digest/NAMESPACE create mode 100644 revdep/library/sprtt/new/digest/R/digest create mode 100644 revdep/library/sprtt/new/digest/R/digest.rdb create mode 100644 revdep/library/sprtt/new/digest/R/digest.rdx create mode 100644 revdep/library/sprtt/new/digest/demo/vectorised.R create mode 100644 revdep/library/sprtt/new/digest/help/AnIndex create mode 100644 revdep/library/sprtt/new/digest/help/aliases.rds create mode 100644 revdep/library/sprtt/new/digest/help/digest.rdb create mode 100644 revdep/library/sprtt/new/digest/help/digest.rdx create mode 100644 revdep/library/sprtt/new/digest/help/paths.rds create mode 100644 revdep/library/sprtt/new/digest/html/00Index.html create mode 100644 revdep/library/sprtt/new/digest/html/R.css create mode 100644 revdep/library/sprtt/new/digest/include/pmurhashAPI.h create mode 100644 revdep/library/sprtt/new/digest/libs/x64/digest.dll create mode 100644 revdep/library/sprtt/new/digest/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_aes.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_blake3.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_crc32.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_digest.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_digest2int.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_encoding.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_hmac.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_misc.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_new_matrix_behaviour.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_num2hex.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_raw.R create mode 100644 revdep/library/sprtt/new/digest/tinytest/test_sha1.R create mode 100644 revdep/library/sprtt/new/jsonlite/CITATION create mode 100644 revdep/library/sprtt/new/jsonlite/DESCRIPTION create mode 100644 revdep/library/sprtt/new/jsonlite/INDEX create mode 100644 revdep/library/sprtt/new/jsonlite/LICENSE create mode 100644 revdep/library/sprtt/new/jsonlite/MD5 create mode 100644 revdep/library/sprtt/new/jsonlite/NAMESPACE create mode 100644 revdep/library/sprtt/new/jsonlite/NEWS create mode 100644 revdep/library/sprtt/new/jsonlite/R/jsonlite create mode 100644 revdep/library/sprtt/new/jsonlite/R/jsonlite.rdb create mode 100644 revdep/library/sprtt/new/jsonlite/R/jsonlite.rdx create mode 100644 revdep/library/sprtt/new/jsonlite/help/AnIndex create mode 100644 revdep/library/sprtt/new/jsonlite/help/aliases.rds create mode 100644 revdep/library/sprtt/new/jsonlite/help/jsonlite.rdb create mode 100644 revdep/library/sprtt/new/jsonlite/help/jsonlite.rdx create mode 100644 revdep/library/sprtt/new/jsonlite/help/paths.rds create mode 100644 revdep/library/sprtt/new/jsonlite/html/00Index.html create mode 100644 revdep/library/sprtt/new/jsonlite/html/R.css create mode 100644 revdep/library/sprtt/new/jsonlite/libs/x64/jsonlite.dll create mode 100644 revdep/library/sprtt/new/jsonlite/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/lme4/CITATION create mode 100644 revdep/library/sprtt/new/lme4/DESCRIPTION create mode 100644 revdep/library/sprtt/new/lme4/INDEX create mode 100644 revdep/library/sprtt/new/lme4/MD5 create mode 100644 revdep/library/sprtt/new/lme4/NAMESPACE create mode 100644 revdep/library/sprtt/new/lme4/NEWS.Rd create mode 100644 revdep/library/sprtt/new/lme4/R/lme4 create mode 100644 revdep/library/sprtt/new/lme4/R/lme4.rdb create mode 100644 revdep/library/sprtt/new/lme4/R/lme4.rdx create mode 100644 revdep/library/sprtt/new/lme4/R/sysdata.rdb create mode 100644 revdep/library/sprtt/new/lme4/R/sysdata.rdx create mode 100644 revdep/library/sprtt/new/lme4/data/Rdata.rdb create mode 100644 revdep/library/sprtt/new/lme4/data/Rdata.rds create mode 100644 revdep/library/sprtt/new/lme4/data/Rdata.rdx create mode 100644 revdep/library/sprtt/new/lme4/help/AnIndex create mode 100644 revdep/library/sprtt/new/lme4/help/aliases.rds create mode 100644 revdep/library/sprtt/new/lme4/help/lme4.rdb create mode 100644 revdep/library/sprtt/new/lme4/help/lme4.rdx create mode 100644 revdep/library/sprtt/new/lme4/help/paths.rds create mode 100644 revdep/library/sprtt/new/lme4/html/00Index.html create mode 100644 revdep/library/sprtt/new/lme4/html/R.css create mode 100644 revdep/library/sprtt/new/lme4/libs/x64/lme4.dll create mode 100644 revdep/library/sprtt/new/lme4/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/lme4/testdata/Johnson.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/SO_sep25.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/Thailand.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/badprof.rds create mode 100644 revdep/library/sprtt/new/lme4/testdata/boo01L.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/colonizer_rand.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/confint_ex.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/crabs_randdata00.Rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/crabs_randdata2.Rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/culcita_dat.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/dat20101314.csv create mode 100644 revdep/library/sprtt/new/lme4/testdata/dataEx_Glmer.txt create mode 100644 revdep/library/sprtt/new/lme4/testdata/fakesim.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/gopherdat2.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/gotway_hessianfly.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/harmel_density.R create mode 100644 revdep/library/sprtt/new/lme4/testdata/harmel_profile.rds create mode 100644 revdep/library/sprtt/new/lme4/testdata/hotpower.csv create mode 100644 revdep/library/sprtt/new/lme4/testdata/koller-data.R create mode 100644 revdep/library/sprtt/new/lme4/testdata/lme-tst-fits.R create mode 100644 revdep/library/sprtt/new/lme4/testdata/lme-tst-fits.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/lme-tst-funs.R create mode 100644 revdep/library/sprtt/new/lme4/testdata/lmerperf.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/mastitis.rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/polytom2.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/polytom3.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/polytomous_test.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/polytomous_vcov_ex.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/prLogistic.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/radinger_dat.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/rankMatrix.rds create mode 100644 revdep/library/sprtt/new/lme4/testdata/respiratory.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/sbTobb.Rdata create mode 100644 revdep/library/sprtt/new/lme4/testdata/strip_env.R create mode 100644 revdep/library/sprtt/new/lme4/testdata/survdat_reduced.Rda create mode 100644 revdep/library/sprtt/new/lme4/testdata/tprfm1.RData create mode 100644 revdep/library/sprtt/new/lme4/testdata/trees513.R create mode 100644 revdep/library/sprtt/new/lme4/testdata/trees513.RData create mode 100644 revdep/library/sprtt/new/mvtnorm/CITATION create mode 100644 revdep/library/sprtt/new/mvtnorm/C_API_Example/DESCRIPTION create mode 100644 revdep/library/sprtt/new/mvtnorm/C_API_Example/NAMESPACE create mode 100644 revdep/library/sprtt/new/mvtnorm/C_API_Example/R/test.R create mode 100644 revdep/library/sprtt/new/mvtnorm/C_API_Example/src/test.c create mode 100644 revdep/library/sprtt/new/mvtnorm/C_API_Example/tests/test.R create mode 100644 revdep/library/sprtt/new/mvtnorm/DESCRIPTION create mode 100644 revdep/library/sprtt/new/mvtnorm/INDEX create mode 100644 revdep/library/sprtt/new/mvtnorm/MD5 create mode 100644 revdep/library/sprtt/new/mvtnorm/NAMESPACE create mode 100644 revdep/library/sprtt/new/mvtnorm/NEWS.Rd create mode 100644 revdep/library/sprtt/new/mvtnorm/NEWS.old create mode 100644 revdep/library/sprtt/new/mvtnorm/R/mvtnorm create mode 100644 revdep/library/sprtt/new/mvtnorm/R/mvtnorm.rdb create mode 100644 revdep/library/sprtt/new/mvtnorm/R/mvtnorm.rdx create mode 100644 revdep/library/sprtt/new/mvtnorm/help/AnIndex create mode 100644 revdep/library/sprtt/new/mvtnorm/help/aliases.rds create mode 100644 revdep/library/sprtt/new/mvtnorm/help/mvtnorm.rdb create mode 100644 revdep/library/sprtt/new/mvtnorm/help/mvtnorm.rdx create mode 100644 revdep/library/sprtt/new/mvtnorm/help/paths.rds create mode 100644 revdep/library/sprtt/new/mvtnorm/html/00Index.html create mode 100644 revdep/library/sprtt/new/mvtnorm/html/R.css create mode 100644 revdep/library/sprtt/new/mvtnorm/include/mvtnorm.h create mode 100644 revdep/library/sprtt/new/mvtnorm/include/mvtnormAPI.h create mode 100644 revdep/library/sprtt/new/mvtnorm/libs/x64/mvtnorm.dll create mode 100644 revdep/library/sprtt/new/mvtnorm/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/mvtnorm/litdb.bib create mode 100644 revdep/library/sprtt/new/processx/CODE_OF_CONDUCT.md create mode 100644 revdep/library/sprtt/new/processx/DESCRIPTION create mode 100644 revdep/library/sprtt/new/processx/INDEX create mode 100644 revdep/library/sprtt/new/processx/LICENSE create mode 100644 revdep/library/sprtt/new/processx/MD5 create mode 100644 revdep/library/sprtt/new/processx/NAMESPACE create mode 100644 revdep/library/sprtt/new/processx/NEWS.md create mode 100644 revdep/library/sprtt/new/processx/R/processx create mode 100644 revdep/library/sprtt/new/processx/R/processx.rdb create mode 100644 revdep/library/sprtt/new/processx/R/processx.rdx create mode 100644 revdep/library/sprtt/new/processx/bin/x64/interrupt.exe create mode 100644 revdep/library/sprtt/new/processx/bin/x64/px.exe create mode 100644 revdep/library/sprtt/new/processx/bin/x64/pxu.exe create mode 100644 revdep/library/sprtt/new/processx/bin/x64/sock.exe create mode 100644 revdep/library/sprtt/new/processx/bin/x64/supervisor.exe create mode 100644 revdep/library/sprtt/new/processx/help/AnIndex create mode 100644 revdep/library/sprtt/new/processx/help/aliases.rds create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-archived.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-defunct.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-deprecated.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-experimental.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-maturing.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-questioning.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-stable.svg create mode 100644 revdep/library/sprtt/new/processx/help/figures/lifecycle-superseded.svg create mode 100644 revdep/library/sprtt/new/processx/help/paths.rds create mode 100644 revdep/library/sprtt/new/processx/help/processx.rdb create mode 100644 revdep/library/sprtt/new/processx/help/processx.rdx create mode 100644 revdep/library/sprtt/new/processx/html/00Index.html create mode 100644 revdep/library/sprtt/new/processx/html/R.css create mode 100644 revdep/library/sprtt/new/processx/include/processx/unix-sockets.c create mode 100644 revdep/library/sprtt/new/processx/include/processx/unix-sockets.h create mode 100644 revdep/library/sprtt/new/processx/libs/x64/client.dll create mode 100644 revdep/library/sprtt/new/processx/libs/x64/processx.dll create mode 100644 revdep/library/sprtt/new/processx/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/testthat/CITATION create mode 100644 revdep/library/sprtt/new/testthat/DESCRIPTION create mode 100644 revdep/library/sprtt/new/testthat/INDEX create mode 100644 revdep/library/sprtt/new/testthat/LICENSE create mode 100644 revdep/library/sprtt/new/testthat/MD5 create mode 100644 revdep/library/sprtt/new/testthat/NAMESPACE create mode 100644 revdep/library/sprtt/new/testthat/NEWS.md create mode 100644 revdep/library/sprtt/new/testthat/R/testthat create mode 100644 revdep/library/sprtt/new/testthat/R/testthat.rdb create mode 100644 revdep/library/sprtt/new/testthat/R/testthat.rdx create mode 100644 revdep/library/sprtt/new/testthat/examples/test-failure.R create mode 100644 revdep/library/sprtt/new/testthat/examples/test-success.R create mode 100644 revdep/library/sprtt/new/testthat/help/AnIndex create mode 100644 revdep/library/sprtt/new/testthat/help/aliases.rds create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-archived.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-defunct.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-deprecated.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-experimental.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-maturing.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-questioning.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-soft-deprecated.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-stable.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/lifecycle-superseded.svg create mode 100644 revdep/library/sprtt/new/testthat/help/figures/logo.png create mode 100644 revdep/library/sprtt/new/testthat/help/paths.rds create mode 100644 revdep/library/sprtt/new/testthat/help/testthat.rdb create mode 100644 revdep/library/sprtt/new/testthat/help/testthat.rdx create mode 100644 revdep/library/sprtt/new/testthat/html/00Index.html create mode 100644 revdep/library/sprtt/new/testthat/html/R.css create mode 100644 revdep/library/sprtt/new/testthat/include/testthat.h create mode 100644 revdep/library/sprtt/new/testthat/include/testthat/testthat.h create mode 100644 revdep/library/sprtt/new/testthat/include/testthat/vendor/catch.h create mode 100644 revdep/library/sprtt/new/testthat/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/testthat/libs/x64/testthat.dll create mode 100644 revdep/library/sprtt/new/testthat/resources/catch-routine-registration.R create mode 100644 revdep/library/sprtt/new/testthat/resources/test-cpp.R create mode 100644 revdep/library/sprtt/new/testthat/resources/test-example.cpp create mode 100644 revdep/library/sprtt/new/testthat/resources/test-runner.cpp create mode 100644 revdep/library/sprtt/new/vctrs/DESCRIPTION create mode 100644 revdep/library/sprtt/new/vctrs/INDEX create mode 100644 revdep/library/sprtt/new/vctrs/LICENSE create mode 100644 revdep/library/sprtt/new/vctrs/MD5 create mode 100644 revdep/library/sprtt/new/vctrs/NAMESPACE create mode 100644 revdep/library/sprtt/new/vctrs/NEWS.md create mode 100644 revdep/library/sprtt/new/vctrs/R/vctrs create mode 100644 revdep/library/sprtt/new/vctrs/R/vctrs.rdb create mode 100644 revdep/library/sprtt/new/vctrs/R/vctrs.rdx create mode 100644 revdep/library/sprtt/new/vctrs/WORDLIST create mode 100644 revdep/library/sprtt/new/vctrs/help/AnIndex create mode 100644 revdep/library/sprtt/new/vctrs/help/aliases.rds create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/cast.png create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/coerce.png create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/combined.png create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-archived.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-defunct.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-deprecated.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-experimental.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-maturing.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-questioning.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-soft-deprecated.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-stable.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/lifecycle-superseded.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/logo.png create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/sizes-recycling.png create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/vec-count-deps.png create mode 100644 revdep/library/sprtt/new/vctrs/help/figures/vec-count-deps.svg create mode 100644 revdep/library/sprtt/new/vctrs/help/paths.rds create mode 100644 revdep/library/sprtt/new/vctrs/help/vctrs.rdb create mode 100644 revdep/library/sprtt/new/vctrs/help/vctrs.rdx create mode 100644 revdep/library/sprtt/new/vctrs/html/00Index.html create mode 100644 revdep/library/sprtt/new/vctrs/html/R.css create mode 100644 revdep/library/sprtt/new/vctrs/include/vctrs.c create mode 100644 revdep/library/sprtt/new/vctrs/include/vctrs.h create mode 100644 revdep/library/sprtt/new/vctrs/libs/x64/symbols.rds create mode 100644 revdep/library/sprtt/new/vctrs/libs/x64/vctrs.dll create mode 100644 revdep/problems.md diff --git a/.Rbuildignore b/.Rbuildignore index b1c4abbe..199fada9 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -16,3 +16,5 @@ ^CRAN-RELEASE$ ^test_ANOVA\.R$ ^compare_anova_script\.csv$ +^revdep$ +^lastMiKTeXException$ diff --git a/README.Rmd b/README.Rmd index 82e1916f..c7de0248 100644 --- a/README.Rmd +++ b/README.Rmd @@ -25,7 +25,7 @@ options(tibble.print_min = 5, tibble.print_max = 5) [![CRAN_Status_Badge](http://www.r-pkg.org/badges/version/sprtt?color=green)](https://cran.r-project.org/package=sprtt) [![total](https://cranlogs.r-pkg.org/badges/grand-total/sprtt)](https://cran.r-project.org/package=sprtt) [![monthly](https://cranlogs.r-pkg.org/badges/sprtt)](https://cran.r-project.org/package=sprtt) -[![codecov](https://codecov.io/gh/MeikeSteinhilber/sprtt/branch/main/graph/badge.svg?token=IQHTDTRBAW)](https://codecov.io/gh/MeikeSteinhilber/sprtt) [![pkgdown](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/pkgdown-pak.yaml/badge.svg)](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/pkgdown-pak.yaml) [![R-CMD-check](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/R-CMD-check-windows-macOs.yaml/badge.svg)](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/R-CMD-check-windows-macOs.yaml) +[![codecov](https://codecov.io/gh/MeikeSteinhilber/sprtt/branch/main/graph/badge.svg?token=IQHTDTRBAW)](https://app.codecov.io/gh/MeikeSteinhilber/sprtt) [![pkgdown](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/pkgdown-pak.yaml/badge.svg)](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/pkgdown-pak.yaml) [![R-CMD-check](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/R-CMD-check-windows-macOs.yaml/badge.svg)](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/R-CMD-check-windows-macOs.yaml) diff --git a/README.md b/README.md index b8be2026..ceea9484 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ [![CRAN_Status_Badge](http://www.r-pkg.org/badges/version/sprtt?color=green)](https://cran.r-project.org/package=sprtt) [![total](https://cranlogs.r-pkg.org/badges/grand-total/sprtt)](https://cran.r-project.org/package=sprtt) [![monthly](https://cranlogs.r-pkg.org/badges/sprtt)](https://cran.r-project.org/package=sprtt) -[![codecov](https://codecov.io/gh/MeikeSteinhilber/sprtt/branch/main/graph/badge.svg?token=IQHTDTRBAW)](https://codecov.io/gh/MeikeSteinhilber/sprtt) +[![codecov](https://codecov.io/gh/MeikeSteinhilber/sprtt/branch/main/graph/badge.svg?token=IQHTDTRBAW)](https://app.codecov.io/gh/MeikeSteinhilber/sprtt) [![pkgdown](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/pkgdown-pak.yaml/badge.svg)](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/pkgdown-pak.yaml) [![R-CMD-check](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/R-CMD-check-windows-macOs.yaml/badge.svg)](https://github.com/MeikeSteinhilber/sprtt/actions/workflows/R-CMD-check-windows-macOs.yaml) diff --git a/cran-comments.md b/cran-comments.md index afd8ed6e..4c9c0ecd 100644 --- a/cran-comments.md +++ b/cran-comments.md @@ -1,54 +1,26 @@ ## Test environments -* local R installation (on windows), R 4.1.0 -* ubuntu-16.04 (on GitHub Actions), R 4.0.0 -* ubuntu-20.04 (on GitHub Actions) -* macOS-latest (on GitHub Actions) -* windows-latest (on GitHub Actions) -* R-hub -- Windows Server 2008 R2 SP1, R-devel, 32/64 bit -- Ubuntu Linux 20.04.1 LTS, R-release, GCC -- Fedora Linux, R-devel, clang, gfortran -* win builder -- using R version 4.1.0 (2021-05-18), using platform: x86_64-w64-mingw32 (64-bit) -- using R Under development (unstable) (2021-07-25 r80663), using platform: x86_64-w64-mingw32 (64-bit) +* GitHub Action +macos-latest (release) +windows-latest (release) +ubuntu-latest (devel) +ubuntu-latest (release) +ubuntu-latest (oldrel-1) +* macOS builder +Build system: r-release-macosx-arm64|4.3.0|macosx|macOS 13.3.1 (22E261)|Mac mini|Apple M1||en_US.UTF-8|macOS 11.3|clang-1403.0.22.14.1|GNU Fortran (GCC) 12.2.0 +* win-builder ## R CMD check results -New submission -==> This is my first submission +── R CMD check results ────────────────── sprtt 0.2.0 ──── +Duration: 2m 28.5s -Possibly mis-spelled words in DESCRIPTION: - Erdfelder (31:34) - Hajnal (25:5) - Rushton (24:49) - SPRT (22:54, 25:33, 31:5) - Schnuerch (31:22) -==> spelling is correct +0 errors ✔ | 0 warnings ✔ | 0 notes ✔ -Found the following (possibly) invalid DOIs: - DOI: 10.2307/2332385 - From: DESCRIPTION - Status: Forbidden - Message: 403 - DOI: 10.2307/2333131 - From: DESCRIPTION - Status: Forbidden - Message: 403 - DOI: 10.2307/2334026 - From: DESCRIPTION - Status: Forbidden - Message: 403 +R CMD check succeeded -==> DOIs are correct! +## Reverse Dependencies +0 reverse dependencies -0 errors √ | 0 warnings √ | 1 note x - -## last CRAN feedback -Please add () behind all function names in the description texts (DESCRIPTION file). e.g: 'seq_ttest' --> seq_ttest() -==> DONE - -Please write references in the description of the DESCRIPTION file in the form authors (year) -==> DONE - -Please add \value to .Rd files regarding exported methods and explain the functions results in the documentation. -==> DONE +## Change of licence from GPL to AGPL +all authors of the package accepted the change +(see open issue: https://github.com/MeikeSteinhilber/sprtt/issues/33) diff --git a/revdep/README.md b/revdep/README.md new file mode 100644 index 00000000..67acf9fb --- /dev/null +++ b/revdep/README.md @@ -0,0 +1,32 @@ +# Platform + +|field |value | +|:--------|:------------------------------------------------------------------------------------| +|version |R version 4.3.0 (2023-04-21 ucrt) | +|os |Windows 10 x64 (build 19045) | +|system |x86_64, mingw32 | +|ui |RStudio | +|language |en | +|collate |German_Germany.utf8 | +|ctype |German_Germany.utf8 | +|tz |Europe/Berlin | +|date |2023-07-06 | +|rstudio |2023.06.0+421 Mountain Hydrangea (desktop) | +|pandoc |3.1.1 @ C:/Program Files/RStudio/resources/app/bin/quarto/bin/tools/ (via rmarkdown) | + +# Dependencies + +|package |old |new |Δ | +|:-----------|:---|:-------|:--| +|digest |NA |0.6.32 |* | +|jsonlite |NA |1.8.5 |* | +|lme4 |NA |1.1-33 |* | +|mvtnorm |NA |1.2-2 |* | +|processx |NA |3.8.1 |* | +|Rcpp |NA |1.0.10 |* | +|StanHeaders |NA |2.26.27 |* | +|testthat |NA |3.1.9 |* | +|vctrs |NA |0.6.3 |* | + +# Revdeps + diff --git a/revdep/checks/libraries.csv b/revdep/checks/libraries.csv new file mode 100644 index 00000000..4a8120ad --- /dev/null +++ b/revdep/checks/libraries.csv @@ -0,0 +1,10 @@ +package,old,new,delta +digest,NA,0.6.32,* +jsonlite,NA,1.8.5,* +lme4,NA,1.1-33,* +mvtnorm,NA,1.2-2,* +processx,NA,3.8.1,* +Rcpp,NA,1.0.10,* +StanHeaders,NA,2.26.27,* +testthat,NA,3.1.9,* +vctrs,NA,0.6.3,* diff --git a/revdep/cran.md b/revdep/cran.md new file mode 100644 index 00000000..33114b63 --- /dev/null +++ b/revdep/cran.md @@ -0,0 +1,7 @@ +## revdepcheck results + +We checked 0 reverse dependencies, comparing R CMD check results across CRAN and dev versions of this package. + + * We saw 0 new problems + * We failed to check 0 packages + diff --git a/revdep/data.sqlite b/revdep/data.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..46183f645cca5cd2956a0a2c9ef15e003207fb27 GIT binary patch literal 24576 zcmeI%O-|cD6bEn{haiDmw?dH@5n{TiM5KU-vZ~lLEmoB_O~7$g)D1E5kXVU7yd39!ot{nk4D*UR`ooL19}k#7snYr3uwxYRie5qsfya& zedmbWu#WV)M6I2dTKiI6TCuBD{i|8*PQ9!qV_}afSkz3!nD2I8wTzw7jD<;jwG$bO z{4nO?pxHurw#QjWE-S|NHaT#e1IKlHZk@EdeXrH&s4F#nXt~{X_jR50-U=!?&d1?! zyzt&Zp85Q$j@c?A-kZ^35(iA>i3&2#!-!rlLaaI;)0prvCBrctPRO~>NJ=yLUAtLonzt^pkJWl@Xlx)Rfg{th#pXRgkntV1dTNA_jYyGw^t?$;v`f;cJ%TNpiAOHaf zKmY;|fB*y_009U<;Qtb6l#OSHqCrDNza}1rlhMxQ0Sz8eovOg3gqG`fo%P^|8>b9^{v@AB4jKwSYTD|4bT7g_zq)h z5P$##AOHafKmY;|fB*y_00B+I@BjD~KmY;|fB*y_009U<00Izz00bVC!19CIEj9}Q Y2tWV=5P$##AOHafKmY;|ct8UG02q}IdjJ3c literal 0 HcmV?d00001 diff --git a/revdep/failures.md b/revdep/failures.md new file mode 100644 index 00000000..9a207363 --- /dev/null +++ b/revdep/failures.md @@ -0,0 +1 @@ +*Wow, no problems at all. :)* \ No newline at end of file diff --git a/revdep/library/sprtt/new/Rcpp/CITATION b/revdep/library/sprtt/new/Rcpp/CITATION new file mode 100644 index 00000000..8b040cbd --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/CITATION @@ -0,0 +1,50 @@ +citHeader("To cite Rcpp in publications use:") + +citEntry(entry = "Article", + title = "{Rcpp}: Seamless {R} and {C++} Integration", + author = personList(as.person("Dirk Eddelbuettel"), + as.person("Romain Fran\\c{c}ois")), + journal = "Journal of Statistical Software", + year = "2011", + volume = "40", + number = "8", + pages = "1--18", + doi = "10.18637/jss.v040.i08", + + textVersion = paste("Dirk Eddelbuettel and Romain Francois (2011).", + "Rcpp: Seamless R and C++ Integration.", + "Journal of Statistical Software, 40(8), 1-18, ", + ".") +) + +citEntry(entry = "Book", + title = "Seamless {R} and {C++} Integration with {Rcpp}", + author = personList(as.person("Dirk Eddelbuettel")), + publisher = "Springer", + address = "New York", + year = 2013, + note = "ISBN 978-1-4614-6867-7", + doi = "10.1007/978-1-4614-6868-4", + + textVersion = paste("Eddelbuettel, Dirk (2013)", + "Seamless R and C++ Integration with Rcpp,", + "Springer, New York, ISBN 978-1-4614-6867-7,", + ".") +) + +citEntry(entry = "Article", + title = "{Extending \textit{R} with \textit{C++}: A Brief Introduction to \textit{Rcpp}}", + author = personList(as.person("Dirk Eddelbuettel"), + as.person("James Joseph Balamuta")), + journal = "The American Statistician", + year = "2018", + volume = "72", + number = "1", + pages = "28-36", + doi = "10.1080/00031305.2017.1375990", + + textVersion = paste("Dirk Eddelbuettel and James Joseph Balamuta (2018).", + "Extending R with C++: A Brief Introduction to Rcpp.", + "The American Statistician. 72(1),", + ".") +) diff --git a/revdep/library/sprtt/new/Rcpp/DESCRIPTION b/revdep/library/sprtt/new/Rcpp/DESCRIPTION new file mode 100644 index 00000000..2ce7cf71 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/DESCRIPTION @@ -0,0 +1,31 @@ +Package: Rcpp +Title: Seamless R and C++ Integration +Version: 1.0.10 +Date: 2023-01-12 +Author: Dirk Eddelbuettel, Romain Francois, JJ Allaire, Kevin Ushey, Qiang Kou, + Nathan Russell, Inaki Ucar, Douglas Bates and John Chambers +Maintainer: Dirk Eddelbuettel +Description: The 'Rcpp' package provides R functions as well as C++ classes which + offer a seamless integration of R and C++. Many R data types and objects can be + mapped back and forth to C++ equivalents which facilitates both writing of new + code as well as easier integration of third-party libraries. Documentation + about 'Rcpp' is provided by several vignettes included in this package, via the + 'Rcpp Gallery' site at , the paper by Eddelbuettel and + Francois (2011, ), the book by Eddelbuettel (2013, + ) and the paper by Eddelbuettel and Balamuta (2018, + ); see 'citation("Rcpp")' for details. +Imports: methods, utils +Suggests: tinytest, inline, rbenchmark, pkgKitten (>= 0.1.2) +URL: https://www.rcpp.org, + https://dirk.eddelbuettel.com/code/rcpp.html, + https://github.com/RcppCore/Rcpp +License: GPL (>= 2) +BugReports: https://github.com/RcppCore/Rcpp/issues +MailingList: rcpp-devel@lists.r-forge.r-project.org +RoxygenNote: 6.1.1 +NeedsCompilation: yes +Packaged: 2023-01-12 14:11:18 UTC; edd +Repository: CRAN +Date/Publication: 2023-01-22 16:30:02 UTC +Built: R 4.3.1; x86_64-w64-mingw32; 2023-06-25 00:39:30 UTC; windows +Archs: x64 diff --git a/revdep/library/sprtt/new/Rcpp/INDEX b/revdep/library/sprtt/new/Rcpp/INDEX new file mode 100644 index 00000000..ebc987ae --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/INDEX @@ -0,0 +1,38 @@ +.DollarNames-methods completion +C++Class-class Reflection information for an internal c++ + class +C++Constructor-class Class "C++Constructor" +C++Field-class Class "C++Field" +C++Function-class Class "C++Function" +C++Object-class c++ internal objects +C++OverloadedMethods-class + Class "C++OverloadedMethods" +LdFlags Deprecated Rcpp Linker Flags +Module Retrieves an Rcpp module +Module-class Rcpp modules +Rcpp-deprecated Deprecated Functions in the Rcpp Package +Rcpp-package R / C++ interface +Rcpp.package.skeleton Create a skeleton for a new package depending + on Rcpp +Rcpp.plugin.maker Facilitating making package plugins +RcppUnitTests Rcpp : unit tests results +compileAttributes Compile Rcpp Attributes for a Package +compilerCheck Check for Minimal (g++) Compiler Version +cppFunction Define an R Function with a C++ Implementation +demangle c++ type information +dependsAttribute Rcpp::depends Attribute +evalCpp Evaluate a C++ Expression +exportAttribute Rcpp::export Attribute +exposeClass Create an Rcpp Module to Expose a C++ Class in + R +formals<--methods Set the formal arguments of a C++ function +getRcppVersion Export the Rcpp (API) Package Version +interfacesAttribute Rcpp::interfaces Attribute +loadModule Load an Rcpp Module into a Package +loadRcppModules Loads Rcpp modules on package startup +pluginsAttribute Rcpp::plugins Attribute +populate Populates a namespace or an environment with + the content of a module +registerPlugin Register an inline plugin +setRcppClass Create a Class Extending a C++ Class +sourceCpp Source C++ Code from a File or String diff --git a/revdep/library/sprtt/new/Rcpp/MD5 b/revdep/library/sprtt/new/Rcpp/MD5 new file mode 100644 index 00000000..ecadd8fb --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/MD5 @@ -0,0 +1,655 @@ +4dfa3723ed669b83c2160648bb4e874a *CITATION +8962d34d4b1c85cd92fac86fa372aa93 *DESCRIPTION +52f315c96cb329173cc129688e517054 *INDEX +38b54ae959bc623e09c99801a92017dd *Meta/Rd.rds +f191f333b866ab8dcb201f48270fe190 *Meta/features.rds +552f37802664d51c5a85ab2eed682dfa *Meta/hsearch.rds +f00322efce554ac8c1dbc360daf64099 *Meta/links.rds +9a18b141b40806ab78c544102704be8f *Meta/nsInfo.rds +b5c2cd8cb43bbce3cc07cf97c121cdb2 *Meta/package.rds +630d718293a15f1b0ce2c06ea4fbc7cb *Meta/vignette.rds +f53ecd48407d7485920c4f3caaf187e0 *NAMESPACE +598d5ba7654252b8aca313368d26adb1 *NEWS.Rd +d6c68f1fe41ced6e98a766a3757313da *R/Rcpp +5e3552bb2b8e841431b5bfcd2c557ddc *R/Rcpp.rdb +648ae5fa370d85c74df1c4c603ae56cf *R/Rcpp.rdx +7a9967333ad85931cc6d2051f4dff76e *announce/ANNOUNCE-0.10.0.txt +734d037a2ac31af4659fb3b2e1a778ad *announce/ANNOUNCE-0.11.0.txt +7d85af8d096e473821a3f001d3128b01 *announce/ANNOUNCE-0.6.0.txt +f61c7e9e1460eac25702b24c1af30442 *announce/ANNOUNCE-0.7.0.txt +a198e05a9b004dfc1f8ea67629f2f6c7 *announce/ANNOUNCE-0.8.0.txt +3e8a171f22548f5da208b58e66b48e6c *announce/ANNOUNCE-0.9.0.txt +edae75b16ae2c0f5ba9624aaa3522a2f *bib/Rcpp.bib +6f1e3b1f4f75e04af65bb9daf94e9630 *discovery/cxx0x.R +2baf167ce452976b0fcb43e44f566af7 *doc/Rcpp-FAQ.Rnw +2b65259365c4ce69a3401f02afa158b7 *doc/Rcpp-FAQ.pdf +887250b7e0675b4a70d6eb1a4689080c *doc/Rcpp-attributes.Rnw +d6377784e1743bad9ff0942071d8cbfa *doc/Rcpp-attributes.pdf +37f50a136d1350e8e864c9265cc88ad8 *doc/Rcpp-extending.Rnw +d3862102e4b99c636ddef6b11674601d *doc/Rcpp-extending.pdf +90eade7bfffa82f250510759bc9a7f36 *doc/Rcpp-introduction.Rnw +3653c00c8dade43f0302f6b951b2f94a *doc/Rcpp-introduction.pdf +e6cf1d12ce4e3a2fed6eddf6290d393f *doc/Rcpp-jss-2011.Rnw +4da52fad52285d53c35e6c7898d1c3d0 *doc/Rcpp-jss-2011.pdf +4524c2761e07e170f681181c2e62eb05 *doc/Rcpp-libraries.Rnw +37f48f85a462b75f63b81ab0f12bc8ff *doc/Rcpp-libraries.pdf +a96bcf4153b795bff19ddc36a17ca435 *doc/Rcpp-modules.Rnw +11706abaf0b566b326efe39234ba2751 *doc/Rcpp-modules.pdf +835d0e2dd365e4621663bd03ae219758 *doc/Rcpp-package.Rnw +137c60a33b37104b2d8b02f8ce4672dc *doc/Rcpp-package.pdf +d76adfdc4e68c69c5ff632e234db6a85 *doc/Rcpp-quickref.Rnw +badec80760b9f9d238d8e5eb2231ddad *doc/Rcpp-quickref.pdf +929a1aad762b7354b6875a35093ec477 *doc/Rcpp-sugar.Rnw +7214e1f64b9d6f00fe52e3a7b7b0b0d0 *doc/Rcpp-sugar.pdf +4ea8fec743d0583013c965e9dd05ff66 *doc/index.html +35fa971232b8c9fb0bbb9dfc2ad3de7a *examples/Attributes/Depends.cpp +a9aa3aceea0b49525155a2c43296318b *examples/Attributes/Export.cpp +c6c9969e0067a1321827369cba1cc566 *examples/Attributes/cppFunction.R +ae6383cbe35d7fd9f03a47b16fe084e4 *examples/Attributes/sourceCpp.R +d8ad7f81287bfb38184962408e21dc4b *examples/ConvolveBenchmarks/GNUmakefile +4e5da9b0fe573983765dacbdd4888f71 *examples/ConvolveBenchmarks/buildAndRun.sh +3b726172d475beb1a950a60c963abdd6 *examples/ConvolveBenchmarks/convolve10_cpp.cpp +7b5f52647bb1401e5ca51ae24a99d9ab *examples/ConvolveBenchmarks/convolve10_cpp.h +198737bb5588686872b7bf92c575b44d *examples/ConvolveBenchmarks/convolve11_cpp.cpp +c2326ac51bb20278c7d200c0217af192 *examples/ConvolveBenchmarks/convolve12_cpp.cpp +ec15a3f27dda294c1ba0e85bc7975001 *examples/ConvolveBenchmarks/convolve13_cpp.cpp +c2934f803727f1f9145f2eaacf7fb783 *examples/ConvolveBenchmarks/convolve14_cpp.cpp +02ae1ae1c668a0037f228a316a9b9717 *examples/ConvolveBenchmarks/convolve2_c.c +41c3477fb3c135e372f7dcee7a00b1fe *examples/ConvolveBenchmarks/convolve3_cpp.cpp +6094f474b9bada3d489b5e9e1eed40db *examples/ConvolveBenchmarks/convolve4_cpp.cpp +570d28eceab6c8e21061abaa932a57b7 *examples/ConvolveBenchmarks/convolve5_cpp.cpp +160f9ca0f7a5e8ce599d5a731e33a302 *examples/ConvolveBenchmarks/convolve7_c.c +feac91b32652ac87f9fca99cb65babef *examples/ConvolveBenchmarks/convolve8_cpp.cpp +b653d0cab1e9c200527c631486b21b22 *examples/ConvolveBenchmarks/convolve9_cpp.cpp +e211fa941ea87850f28aafd93dbaea01 *examples/ConvolveBenchmarks/exampleRCode.r +83e612c4f034144d20769da6a98ab430 *examples/ConvolveBenchmarks/loopmacro.h +a39297262c26fcf0016a007c8729f7ed *examples/ConvolveBenchmarks/overhead.r +695db9645074a40edf199a3f6e7b99d9 *examples/ConvolveBenchmarks/overhead.sh +41a7585097bb0330a19163f63b9eb582 *examples/ConvolveBenchmarks/overhead_1.cpp +70bc5f4cab64d21baa5efd44371d6c06 *examples/ConvolveBenchmarks/overhead_2.c +f98ba450080bf7ededba779a9eb9ef08 *examples/FastLM/benchmark.r +187ff739229daa658a997db7361cf79a *examples/FastLM/benchmarkLongley.r +57e3f462b6e57f6d4781d93ad0b5a0f0 *examples/FastLM/fastLMviaArmadillo.r +96177e5073669fce0ada1a133a4b528a *examples/FastLM/fastLMviaGSL.r +bed809fc1187686e9c3f031da7ecc03a *examples/FastLM/lmArmadillo.R +e90e71260dd32a062301a565b0ceb78a *examples/FastLM/lmGSL.R +dee16ee1aaf90787c0d3fe441b57e572 *examples/Misc/fibonacci.r +51b7f11bdc147d595d3d7de4a7b88129 *examples/Misc/ifelseLooped.r +80df7f84cd6c98c9d3b45ceaa62b6325 *examples/Misc/newFib.r +3028009739751d645a3f3c1e65c335b1 *examples/Misc/piBySimulation.r +b6d55aea50fdd5a95b36f006bfa9bbdf *examples/Misc/piSugar.cpp +b28eef52d9c70bdc3bc1c7c4af74a705 *examples/OpenMP/GNUmakefile +6ac8a4754e7a6c968f910b775837981b *examples/OpenMP/OpenMPandInline.r +1fb803a50758e7abccccbacf6df79bb9 *examples/OpenMP/check.R +33d174735e08ffcbfe8b14f77be6467e *examples/OpenMP/piWithInterrupts.cpp +ee8c42a72f8ed650b8ac32443890c01b *examples/RcppGibbs/RcppGibbs.R +cefdedf5f9c0d671bcf465e948198a29 *examples/RcppGibbs/RcppGibbs_Updated.R +a57feb54c968ab827c78c5c18c1d1408 *examples/RcppGibbs/timeRNGs.R +e8a89fe0eebf8ec758806abc84e42d8d *examples/RcppInline/RObject.r +07260e8bebfc924ed834ac9adc10ed3e *examples/RcppInline/RcppInlineExample.r +0e55533b689b5cc21d6e48ed89e39f50 *examples/RcppInline/RcppInlineWithLibsExamples.r +8d8b770eaeee86bcb2a7b0939a3c75f3 *examples/RcppInline/RcppSimpleExample.r +af8de22ca53be6cde070ad079bcc0560 *examples/RcppInline/UncaughtExceptions.r +04094741972fda044af2c1982433f37a *examples/RcppInline/external_pointer.r +924087b70f9e658de341442f27c787ee *examples/SugarPerformance/Timer.h +ddfeedc53f53f33a3da83660c9bc022e *examples/SugarPerformance/Timertest.cpp +8be8229bd89b2ea3a760d1112f7a7054 *examples/SugarPerformance/sugarBenchmarks.R +4b5eef1853e02850de35d4799c7392ef *examples/functionCallback/README +f55a0d78225fef3970fc5f54fddb5801 *examples/functionCallback/newApiExample.r +2b3ff26140686d910b4fe51505b817a3 *examples/performance/extractors.R +33c7adefe3137cae65b189490c958c6a *examples/performance/performance.R +bfb1013511641e19525df52e61532b31 *help/AnIndex +278a2aef680e9b4540ded1345f6b186d *help/Rcpp.rdb +7db241f1c4adf23c7b02ef5428c69c48 *help/Rcpp.rdx +6f470e2bfbc13a04c1e51605c8f6ef5e *help/aliases.rds +5669027f3e688ec3b727f210357ff8c6 *help/paths.rds +623b573d5aeff157b2cab5ecfba58660 *html/00Index.html +8b9362669af13540a86a3ac6cf22f99d *html/R.css +46bdb787a2fde9b6cd8ff24039e84aa0 *include/Rcpp.h +7acf90ededacb240b082c50653a1fe05 *include/Rcpp/Benchmark/Timer.h +55e8ffbfaecd5bd65ec560b5a748b249 *include/Rcpp/DataFrame.h +e4195b2fee650b67d709d7bd529f3de6 *include/Rcpp/Dimension.h +bed24a03d2f346377d351327e6ead507 *include/Rcpp/DottedPair.h +8ae8df6f92f7d17625b543348c9c035c *include/Rcpp/DottedPairImpl.h +c59231f7b6bfaddb9e14b5d26ca25509 *include/Rcpp/Environment.h +719d99509ff3398d24d31a4964dc6beb *include/Rcpp/Extractor.h +0e673291cac4bf839157946880772c1d *include/Rcpp/Fast.h +1836fe44282438109267ce447debae1a *include/Rcpp/Formula.h +02c97e92bb9d86bf42fd11bb1f0b610e *include/Rcpp/Function.h +6ad1b0148d43fd84f39d8e030e39a871 *include/Rcpp/InputParameter.h +33e8288bc78be5183dd4879475dde613 *include/Rcpp/InternalFunction.h +ad94932d526af097cfe9e8f269c09796 *include/Rcpp/InternalFunctionWithStdFunction.h +4f649deb041fc8b0ff2680d1a75a49db *include/Rcpp/Interrupt.h +0198fa76eadb139dfc300e7b583379d0 *include/Rcpp/Language.h +4df6c1501ce42ce8669ed6e6473653d5 *include/Rcpp/Light +7423a0c0e22f136a8cde2ee861349d13 *include/Rcpp/Lighter +831f454f66395440e5c4b805917f2b9d *include/Rcpp/Lightest +2e01e759b99ac628ba34b2704d6c9aa6 *include/Rcpp/Module.h +e54ff3fb24c5fb5c00e35804b4043177 *include/Rcpp/Na_Proxy.h +30a357c1b1bf0a4b7b3c06aec6ac6891 *include/Rcpp/Named.h +09c3d2e030266a2716c465005fddb8ad *include/Rcpp/Nullable.h +ec0cd8dd199ad35da6ef847625789331 *include/Rcpp/Pairlist.h +c299955262d228fc372294633ecb10a9 *include/Rcpp/Promise.h +c7c202116cb2d8f9993f2d2879a48339 *include/Rcpp/RNGScope.h +19d73d0c48066eab27b7e21f016aca39 *include/Rcpp/RObject.h +7eaef3d46101154d1492c710f3cad3bf *include/Rcpp/Rcpp +0708f78d2a5868bd0036bdffc92557eb *include/Rcpp/Reference.h +577707408edc19445de29e2fd4182292 *include/Rcpp/Rmath.h +4a8bc08de01a68edf476065293076bc9 *include/Rcpp/S4.h +b479ccd53c1917ce1140ee0a17bb3d21 *include/Rcpp/StretchyList.h +bb14d4e4092adf456e6ee1186b6950c2 *include/Rcpp/String.h +70f564c35b318a49d4bafdcdfe861c7e *include/Rcpp/StringTransformer.h +016374544bddc85df03012bf1e70377c *include/Rcpp/Symbol.h +6370b5966cc98d3e684862425576275b *include/Rcpp/Vector.h +eed9bf9af10a68be9cd55e5a5cdaa36a *include/Rcpp/WeakReference.h +c84d37569cc5094df6e4c8600530d110 *include/Rcpp/XPtr.h +2eff8a753ede96fbcf538eab9eb22889 *include/Rcpp/algo.h +8945b9daf79dc522161d4738be104e8e *include/Rcpp/algorithm.h +3fa2caaea31d12b63d0a049c1da3c878 *include/Rcpp/api/bones/Date.h +560684b180bc9eb1aaaf6f427ea97063 *include/Rcpp/api/bones/Datetime.h +4d936b49167638e86368f4b8e26c13cc *include/Rcpp/api/bones/bones.h +49f3c640f64681d80bfd2395309a4ddb *include/Rcpp/api/bones/wrap_extra_steps.h +738de61f646f72b06810142fcb09af6f *include/Rcpp/api/meat/DataFrame.h +80788c003d6b95f633d53db11b4c42e0 *include/Rcpp/api/meat/Date.h +64e00680fbc6a82bbd1dd0e100e10673 *include/Rcpp/api/meat/Datetime.h +13355fb54111f51930877bcddb41d50c *include/Rcpp/api/meat/Dimension.h +26477794f8170b533113dcf620d64d1c *include/Rcpp/api/meat/DottedPairImpl.h +006fb9ab61399d07b7f7bbd8ae6cf92f *include/Rcpp/api/meat/Environment.h +e3132a348dd7c8cb342e4df0dd480737 *include/Rcpp/api/meat/Rcpp_eval.h +a8b20b3c2b1e123172ab3a1eb78e04b0 *include/Rcpp/api/meat/S4.h +9fd69c4ef0c1780784322f902305d1c7 *include/Rcpp/api/meat/StretchyList.h +eded8a0a95dd5ecdcae8aa70aceb795c *include/Rcpp/api/meat/Vector.h +a3e8a42322f0e644f1d6b6d4f55425e7 *include/Rcpp/api/meat/as.h +f1b2b53b2851bbd3afb878ef3829f58f *include/Rcpp/api/meat/export.h +cc1991e18d0c1d1e3470285fec935c36 *include/Rcpp/api/meat/is.h +3ecf92371682f347f71c6da62730a05e *include/Rcpp/api/meat/meat.h +b8b08db5250d9cd27130853ed04041bc *include/Rcpp/api/meat/message.h +71c33d73cde9cdf7368627a9b00a8e7d *include/Rcpp/api/meat/module/Module.h +d3e14b929d0b6cd092f52d1ced57b573 *include/Rcpp/api/meat/protection.h +c9af45da88ea151bb2f8cd27900257e8 *include/Rcpp/api/meat/proxy.h +12c775ee39ec274c4825219d25e04f43 *include/Rcpp/api/meat/wrap.h +47fc05bb3d86217c07793ea37d833302 *include/Rcpp/as.h +90c153091bc3fb1e123fef9dc40394e6 *include/Rcpp/barrier.h +fa7b26bbe19f908b9c00ead2fe2717ac *include/Rcpp/clone.h +1b3b2bee1fc9bd3f231c2a33ca572281 *include/Rcpp/complex.h +e8031e721779d357548ff14b4777343e *include/Rcpp/config.h +b90e19134c5d4a4c0652f956c022d1e4 *include/Rcpp/date_datetime/Date.h +e75130fc77dac6243e5c88639c940dea *include/Rcpp/date_datetime/Datetime.h +0d754f1a9266c3e1bbc6946ba1304ab5 *include/Rcpp/date_datetime/date_datetime.h +e2616c39c51c09af33f595b28d1f5fe5 *include/Rcpp/date_datetime/newDateVector.h +1c84cd464c857eadab9323be5772ef2b *include/Rcpp/date_datetime/newDatetimeVector.h +eeaacae019fe68c8acbd3e9fbea29a3d *include/Rcpp/date_datetime/oldDateVector.h +a2bcdcb2cc9e096bfb46106875462a13 *include/Rcpp/date_datetime/oldDatetimeVector.h +7668f358d29578e82800d6bd98f60a12 *include/Rcpp/exceptions.h +fabe6bb18d2e4714327930f192754072 *include/Rcpp/exceptions/cpp11/exceptions.h +4f3d1575c7468c08aff9caf2029b5262 *include/Rcpp/exceptions/cpp98/exceptions.h +3642669268fd6c58182bb23da0101660 *include/Rcpp/exceptions_impl.h +7dc521891bf0b250105c08f84806dedf *include/Rcpp/generated/DataFrame_generated.h +b0b0b9732bb0201a5dbecefd41ed1a6f *include/Rcpp/generated/DottedPair__ctors.h +1a89560f0b3c22732c724c82f77bc711 *include/Rcpp/generated/Function__operator.h +89c6d03ae9bce1e1e7c694408cd71f4d *include/Rcpp/generated/InternalFunctionWithStdFunction_call.h +b8c60809df30845e119f0b477716bb65 *include/Rcpp/generated/InternalFunction__ctors.h +89cb37088328001298a4ba18a4acd1d5 *include/Rcpp/generated/Language__ctors.h +af099521f7cbf6024d6a6ce428861634 *include/Rcpp/generated/Pairlist__ctors.h +42e058cc4ef74a4b09e9d3b102cd417a *include/Rcpp/generated/Vector__create.h +97ed751b981c523527ce243786ac969d *include/Rcpp/generated/grow__pairlist.h +292084b02ea848293ea5461a0401ebde *include/Rcpp/grow.h +5fa886fea6bfe95d86c97fc32794711e *include/Rcpp/hash/IndexHash.h +118185092dfabe6230c4e6c2a8e50257 *include/Rcpp/hash/SelfHash.h +ce761de72f7730fe942b91e35e6b9ba6 *include/Rcpp/hash/hash.h +3c1b55773be7d386bca01a99c8fa94af *include/Rcpp/internal/Exporter.h +87298c0d130f4d0c2c9e3bcbf8f52712 *include/Rcpp/internal/GreedyVector.h +ac0b994918191501b757516ce5ee263b *include/Rcpp/internal/ListInitialization.h +589b5e7ef7ec36ea7c72c0989856322e *include/Rcpp/internal/NAComparator.h +ddeb259fb4dc45ce8f48af5e7c67327a *include/Rcpp/internal/NAEquals.h +9ebaf1b5d82a7300ea9829a015b119e9 *include/Rcpp/internal/Proxy_Iterator.h +3b9b1995e34864e5b0594127ded878a3 *include/Rcpp/internal/SEXP_Iterator.h +ef7589197950d24c37c68868a2fd4ec5 *include/Rcpp/internal/caster.h +1cc9fbe420c4d94a392fa41db6607f81 *include/Rcpp/internal/converter.h +b261424a4674e913fc059a5b98afee86 *include/Rcpp/internal/export.h +d75740f6c80130661e85ef0e8af6ef17 *include/Rcpp/internal/na.h +2d6716a93c54ae524caab179db28206f *include/Rcpp/internal/r_coerce.h +440c2f839bd5756d630f66f41ee7c9a7 *include/Rcpp/internal/r_vector.h +be267828e3e200668df1d37c3b90edd0 *include/Rcpp/internal/wrap.h +14b302e7f5cca681f122cccde5418cbd *include/Rcpp/internal/wrap_end.h +e32f85c09b96c4c250a58d2961f92896 *include/Rcpp/iostream/Rstreambuf.h +c852659f0876b4dd0a3d3d99e972d1cb *include/Rcpp/is.h +24e8a8c1f4a580954091edb9dae2cfd9 *include/Rcpp/lang.h +d93f0f5c828018c1ae632ce1fb929293 *include/Rcpp/longlong.h +4e9effca3c5f2dabaa4e6aa478b67528 *include/Rcpp/macros/cat.hpp +623f4ca3111e4a28afe10133897a8f89 *include/Rcpp/macros/config.hpp +ec19b90809bb03c920fa9d6df8af2732 *include/Rcpp/macros/debug.h +593ee227e0cc7a90b2e48791889ead98 *include/Rcpp/macros/dispatch.h +32681ffdaa790b76bf3e20d3a6c17771 *include/Rcpp/macros/interface.h +bf6d92385b7958959cb10a6b3bfd2a44 *include/Rcpp/macros/macros.h +3347bc9bf5c92bf9b929c61275c1714b *include/Rcpp/macros/module.h +0c4f36da838e8571b7bc602b4b483295 *include/Rcpp/macros/traits.h +acdd29c8bc3af4e20bbb733ab4bd7e74 *include/Rcpp/macros/unroll.h +1762f3b08abffc14b677c9d4c0ee24d2 *include/Rcpp/macros/xp.h +90f826d6b2719cd8b19266f7eed1d71b *include/Rcpp/module/CppFunction.h +8d492c19d0746d6f0531a42ce62e4169 *include/Rcpp/module/Module.h +1f282a0f0e1498bbe9f228dad9fdebfd *include/Rcpp/module/Module_Add_Property.h +fd6ad1311c4cc5e0cffcc29722ca0f20 *include/Rcpp/module/Module_Field.h +923ca9c389ce3dd672edcaa3f1e0fe6b *include/Rcpp/module/Module_Property.h +f27974e30a5cdda0162a99a5d0026fe0 *include/Rcpp/module/Module_generated_Constructor.h +ab1e4d893d83ea1aad20d1f830370e8c *include/Rcpp/module/Module_generated_CppFunction.h +8e976ff3819acb86a25a76b242ba6aa2 *include/Rcpp/module/Module_generated_CppMethod.h +1cac718fae492c5f7ae939a253906e22 *include/Rcpp/module/Module_generated_Factory.h +b11be5d7819c7a763395ca8c0089423d *include/Rcpp/module/Module_generated_Pointer_CppMethod.h +9ae1c39a7c07fb1de2fed0169c4822f0 *include/Rcpp/module/Module_generated_Pointer_method.h +7606a43b443a7a4b0749d1994f7746dd *include/Rcpp/module/Module_generated_class_constructor.h +fbe65f4f50289e30d64d8b8723dcc5d0 *include/Rcpp/module/Module_generated_class_factory.h +f98a219d68a1c072d515e3dfd445b741 *include/Rcpp/module/Module_generated_class_signature.h +282a86024a78450a3f3d2bb1bb0cbda9 *include/Rcpp/module/Module_generated_ctor_signature.h +54bcedd25514753ee10ed273511f8bbd *include/Rcpp/module/Module_generated_function.h +f34764fa42d6f6fc0904264099253778 *include/Rcpp/module/Module_generated_get_signature.h +2af8acdcd6b282fcad59eb353de02ca0 *include/Rcpp/module/Module_generated_method.h +d9cb32851ba55296536d06c3d61ae711 *include/Rcpp/module/class.h +b021df8570d99c4821e25c137aa45a01 *include/Rcpp/module/class_Base.h +99322cf8421a1cc8964659b05d79a906 *include/Rcpp/module/get_return_type.h +52cb1005938ee160ac29547e92d18584 *include/Rcpp/platform/compiler.h +8f9d3b2218818dfe5f703e6900d603e9 *include/Rcpp/platform/solaris.h +31dca740cef939bf19499eeb1a50a3ea *include/Rcpp/print.h +abd6c01295a88b73432a77f6a79aca3a *include/Rcpp/protection/Armor.h +fa63d47f044e1012a5431319108f01f9 *include/Rcpp/protection/Shelter.h +6357a773233c2c9f5415c6445fe103f9 *include/Rcpp/protection/Shield.h +2fb2464623e39ad6040f4457b6ef382c *include/Rcpp/protection/protection.h +9b71f44a9870eaee5c63de664e5db4f1 *include/Rcpp/proxy/AttributeProxy.h +d1800f7df6f83a017e0501af64551239 *include/Rcpp/proxy/Binding.h +2767ffc2e7c0e7832e7223cd8da38be1 *include/Rcpp/proxy/DottedPairProxy.h +59d09bb7d953413d5452a45616fca92f *include/Rcpp/proxy/FieldProxy.h +bb4b32da96533b2cae35b524cf796d04 *include/Rcpp/proxy/GenericProxy.h +e34b2baf18b2684fe26743c96f78b3c6 *include/Rcpp/proxy/NamesProxy.h +e6ffa94de4d38f34d9b363785fbdf1ff *include/Rcpp/proxy/ProtectedProxy.h +0a75a348caecd8836340ca11be0435d7 *include/Rcpp/proxy/RObjectMethods.h +9e412a44a35eb570fe422b00c15dc84e *include/Rcpp/proxy/SlotProxy.h +16583a2ce9f3f158d32a59bc69dc6045 *include/Rcpp/proxy/TagProxy.h +5b3488834c9e483325dc45493deaf0d4 *include/Rcpp/proxy/proxy.h +c8b9ceaf9be732c7a21bcea062ba2681 *include/Rcpp/r/headers.h +3623ef6f3fa8a62ec1f67dbe2f86e51b *include/Rcpp/r_cast.h +0975231e8a827815b7cf027a56bd7fec *include/Rcpp/routines.h +5c5eddabb61b11f1e2aa1dfd3b7dfcc6 *include/Rcpp/sprintf.h +652b362ffc5b25dc354e2f94ccf775df *include/Rcpp/stats/beta.h +830d809435ad6d90f513ceb19ed229ff *include/Rcpp/stats/binom.h +de8f527ad087fd135d60496e83600129 *include/Rcpp/stats/cauchy.h +28c835cdee1aa30eff6d7f6481a7c7b7 *include/Rcpp/stats/chisq.h +2fcae848fbd39f938335de220dfceb56 *include/Rcpp/stats/dpq/dpq.h +50246afd70a6c354111d21fef9a61454 *include/Rcpp/stats/dpq/macros.h +2a0a10252c313fa1101c426a71f419b3 *include/Rcpp/stats/exp.h +16b8c2b35aa2dd1acd61aea749bea591 *include/Rcpp/stats/f.h +3531db9168652e50f1a2f7e48995e652 *include/Rcpp/stats/gamma.h +259484f02f4b70c75f061eb3acebc68b *include/Rcpp/stats/geom.h +cddc6f8806bbff126f43aad6d9f64225 *include/Rcpp/stats/hyper.h +afbc488e006d43bbb44f00b39bdc9279 *include/Rcpp/stats/lnorm.h +0148fa77627fc2649b4cc8fda21ff2cf *include/Rcpp/stats/logis.h +2f20232d49ad4e0d5aa4affe29a83677 *include/Rcpp/stats/nbeta.h +255732d79d848b5ef2dc23a0bb020c78 *include/Rcpp/stats/nbinom.h +b648f374ad9b409f3a693cb13d2dacf2 *include/Rcpp/stats/nbinom_mu.h +792ff5b69094be8d30a61da005e8b8a2 *include/Rcpp/stats/nchisq.h +4285fba50176e606b3183e550ca57008 *include/Rcpp/stats/nf.h +62bcbc788f700bb418899f2d5d71674e *include/Rcpp/stats/norm.h +b9bb0937015e9915c9eed07d7d5e675e *include/Rcpp/stats/nt.h +ee8d82efa40767e1ee30b1b39f0d2b9b *include/Rcpp/stats/pois.h +bd6f29269c4cb5e0714c7eb14497dd24 *include/Rcpp/stats/random/random.h +6be67d92344ae4ffe85a2d4a966c5712 *include/Rcpp/stats/random/rbeta.h +cdc109dfaa7c849fe8f5108a8157286e *include/Rcpp/stats/random/rbinom.h +2fe775c698a801f71c81d958ff2153bf *include/Rcpp/stats/random/rcauchy.h +09e49a79928fba558003e949f7e42625 *include/Rcpp/stats/random/rchisq.h +eb7d8d8957f95e55c7b4c883d07bde3e *include/Rcpp/stats/random/rexp.h +796f003192b271cfd01be89f08fc5857 *include/Rcpp/stats/random/rf.h +d3f7b0de54bbff91a52b5f3e97b6f0f9 *include/Rcpp/stats/random/rgamma.h +f30537d903fd0e2fe0b8fbde1ad0f448 *include/Rcpp/stats/random/rgeom.h +ef335473c41b8bf22c2ed8ead3d02802 *include/Rcpp/stats/random/rhyper.h +812d6f54e228aa74586d4494462dc308 *include/Rcpp/stats/random/rlnorm.h +e19c5aac4d1e6f05fb215da8ab9abd63 *include/Rcpp/stats/random/rlogis.h +8401528e0344ac91e8a59d3c75ea3811 *include/Rcpp/stats/random/rnbinom.h +da102c578dc03d90e134bc716ce86061 *include/Rcpp/stats/random/rnbinom_mu.h +281fe24171a0dc1a2f5d32b792b29840 *include/Rcpp/stats/random/rnchisq.h +d11f94b30bfe73bec96e494c19010112 *include/Rcpp/stats/random/rnorm.h +68c0bc9a9bf8adf587cfafec41f2e0c3 *include/Rcpp/stats/random/rpois.h +22c48598462a7a67f7c46f827a7ca37b *include/Rcpp/stats/random/rsignrank.h +6d053ab00aee5507bdcd37b260edb2ca *include/Rcpp/stats/random/rt.h +e4157ac1a6474db7d023ed619f8a3911 *include/Rcpp/stats/random/runif.h +0de983b302b5686c55cf1348856736f2 *include/Rcpp/stats/random/rweibull.h +9d96c7c693ee9ee2be41a02aca2c907c *include/Rcpp/stats/random/rwilcox.h +d5e57758623ecb887417b652e9dbe431 *include/Rcpp/stats/stats.h +51dea0f553fe2661ebbf069bba1c6fab *include/Rcpp/stats/t.h +72600819bbbb51028983e81c6623f47f *include/Rcpp/stats/unif.h +edcd15051fead7e65a02fe4848ec5969 *include/Rcpp/stats/weibull.h +b19248e3d1ba5159604ee91bc499fbe0 *include/Rcpp/storage/NoProtectStorage.h +0f0750ca5166fbea1a202f3a74e94579 *include/Rcpp/storage/PreserveStorage.h +4bfc6bf68fd92addd39ad5eabe987ccd *include/Rcpp/storage/storage.h +6d4b5fd0017b129f89731c3af6f63545 *include/Rcpp/sugar/Range.h +be07b75cd41bf643098bf8dc9f6fd6bd *include/Rcpp/sugar/block/SugarBlock_1.h +93914f21ce2678a075f440256bff7256 *include/Rcpp/sugar/block/SugarBlock_2.h +b38058d7f4161d552c59199d971759d2 *include/Rcpp/sugar/block/SugarBlock_3.h +77631c6ccb9bf7900cc3e9870308f15e *include/Rcpp/sugar/block/SugarMath.h +0b04c68170924e36a049448bb9dffbcf *include/Rcpp/sugar/block/Vectorized_Math.h +b303e234459f72118cdb77b5fc6c40d2 *include/Rcpp/sugar/block/block.h +8989b1fc88898a94d028256afd535218 *include/Rcpp/sugar/functions/Lazy.h +332e143da726e96aa5342a2d379ad888 *include/Rcpp/sugar/functions/all.h +be21eae934bd2eb08c36aa98a95f8437 *include/Rcpp/sugar/functions/any.h +2034cef020d507b44a56287085f01b03 *include/Rcpp/sugar/functions/cbind.h +356ce7a62fd40bfb5c99f5d90ceab9c8 *include/Rcpp/sugar/functions/clamp.h +006ff253f5119766397ae8786b6f3273 *include/Rcpp/sugar/functions/complex.h +8c48d64608f50fd65a1060eb0ba0a94f *include/Rcpp/sugar/functions/cummax.h +676a6d35542c22993a733ac9ca7f4557 *include/Rcpp/sugar/functions/cummin.h +d48484d2c5885e5132dae2c5360cc003 *include/Rcpp/sugar/functions/cumprod.h +b5875c167cebe51528173279a35e1c80 *include/Rcpp/sugar/functions/cumsum.h +d9339ceea3657d0eebffff3c4fc19ade *include/Rcpp/sugar/functions/diff.h +e89b6f5086b49094e87a58183226c37e *include/Rcpp/sugar/functions/duplicated.h +ee8361b3d041e25bf9dd142b2b6809db *include/Rcpp/sugar/functions/functions.h +8a1d27971f10c32f1c2dbc2441c47797 *include/Rcpp/sugar/functions/head.h +71a232c26d62819d7752cbd198ccd471 *include/Rcpp/sugar/functions/ifelse.h +e6be4a52d004d3d7cdf4577c03bc0ad6 *include/Rcpp/sugar/functions/is_finite.h +29a018bc6da09bea93392ac25e4c5ff6 *include/Rcpp/sugar/functions/is_infinite.h +e04f27b0d6d0902fd507b0c8a6c1ab6f *include/Rcpp/sugar/functions/is_na.h +905bd30e93c3bfea935a665f6e8eeecf *include/Rcpp/sugar/functions/is_nan.h +8a13e5b92b45d6fdb429164b897920b0 *include/Rcpp/sugar/functions/lapply.h +e17dd7603ed04900df60d381e1f8a117 *include/Rcpp/sugar/functions/mapply.h +1e29ed111579f3cf0c3215d476edae32 *include/Rcpp/sugar/functions/mapply/mapply_2.h +9c2025d02a6867fe1d31f12df3c41b5a *include/Rcpp/sugar/functions/mapply/mapply_3.h +ab7b9d24e77fe2dc072077714933d59d *include/Rcpp/sugar/functions/match.h +747824a9e7823288ba51af113ed9af50 *include/Rcpp/sugar/functions/math.h +e1d5c777461b843bc04bec8b3c4f6787 *include/Rcpp/sugar/functions/max.h +bf3fb31ed2cfec71483f5cf92a6b3ff8 *include/Rcpp/sugar/functions/mean.h +e7ddf543af82118e4774aab3f2e63271 *include/Rcpp/sugar/functions/median.h +17f81f3f0fb3cc04341371ab641ff46a *include/Rcpp/sugar/functions/min.h +55ea8f9269403a501d18d47198f997ef *include/Rcpp/sugar/functions/na_omit.h +fe272f9c21bb17980bdb2efffd7a7f1c *include/Rcpp/sugar/functions/pmax.h +7bd993f789e126017b34ff9858bd915a *include/Rcpp/sugar/functions/pmin.h +ae74c9114eec986e67ecab7ea08d401c *include/Rcpp/sugar/functions/pow.h +a1f5d8e23763f3e16039b32589131aaa *include/Rcpp/sugar/functions/range.h +1646622d8ec6731c53b7d74292906c43 *include/Rcpp/sugar/functions/rep.h +73bfa7e84c00ac5badd0306336c93330 *include/Rcpp/sugar/functions/rep_each.h +cb49753448b25c3cd6498bfbbae3c8de *include/Rcpp/sugar/functions/rep_len.h +5524927f94bb2c48f81cf050d5548e3d *include/Rcpp/sugar/functions/rev.h +e780762055db29b8108b020f605729a2 *include/Rcpp/sugar/functions/rowSums.h +e81e6ae804c78e169d9689df7843f20e *include/Rcpp/sugar/functions/sample.h +7fc5bd5bc3d543addb28c7d843824237 *include/Rcpp/sugar/functions/sapply.h +f964dafa72508e308f9ff057c577c49e *include/Rcpp/sugar/functions/sd.h +d85576fa8d0647c9241feb4ad3971bfa *include/Rcpp/sugar/functions/self_match.h +4723c52a2e6ffcb5a99bbf5f120f0e1f *include/Rcpp/sugar/functions/seq_along.h +29212159360b47adf9ee370544765db8 *include/Rcpp/sugar/functions/setdiff.h +d5a5b9a9b75d93f355534de01dc6ca07 *include/Rcpp/sugar/functions/sign.h +148a1f4a4a0017f7c5520a4a44441fe8 *include/Rcpp/sugar/functions/strings/collapse.h +6a4ca421d9353d551e3454c3c7ba6b00 *include/Rcpp/sugar/functions/strings/strings.h +5f405963ec4bd5cbcc470285814ee796 *include/Rcpp/sugar/functions/strings/trimws.h +fa6996110472311d86217245a4817e28 *include/Rcpp/sugar/functions/sum.h +d098d6ad59c945dfe335b022eb19bd6c *include/Rcpp/sugar/functions/table.h +6aece98287f5b416b1b9dde8258b7ba3 *include/Rcpp/sugar/functions/tail.h +3714352196527f3eb1911d7dfeda0925 *include/Rcpp/sugar/functions/unique.h +6af0ed03b22ab5376164eeca35d27830 *include/Rcpp/sugar/functions/var.h +a21e2d861c3e1641d451e8542ac90da7 *include/Rcpp/sugar/functions/which_max.h +cb63e9ae52933534b47e4b03b3345d10 *include/Rcpp/sugar/functions/which_min.h +1f232e3aea101e0a7a967b292f5fee3e *include/Rcpp/sugar/logical/SingleLogicalResult.h +633aaf9fd410363a0816ee14ea0756fe *include/Rcpp/sugar/logical/and.h +fa170788a69bc85fcb1ead3c8e3d8d61 *include/Rcpp/sugar/logical/can_have_na.h +ea316f6c93309fb814bcba060b4243c5 *include/Rcpp/sugar/logical/is.h +349f08cf81f52ed760ecd4dedd472443 *include/Rcpp/sugar/logical/logical.h +c848c2c54466ce13e842fff36b33cbfe *include/Rcpp/sugar/logical/not.h +ceda7f41514004d0f41a0a25df616480 *include/Rcpp/sugar/logical/or.h +16fbabf279bea866b7a9241084d582dc *include/Rcpp/sugar/matrix/as_vector.h +22dce70c24a72d954c9c0ddb637a87af *include/Rcpp/sugar/matrix/col.h +1efcfad1b72aac3ab68857be3a0578da *include/Rcpp/sugar/matrix/diag.h +2ce9df0e2282b1780d168cdaec70e501 *include/Rcpp/sugar/matrix/lower_tri.h +ac84cad78d201a054f8d7df13a6b1353 *include/Rcpp/sugar/matrix/matrix_functions.h +9d87e6df5f7cb6845b6073ae4c486f89 *include/Rcpp/sugar/matrix/outer.h +5d698479a84a2e019271ca70556478eb *include/Rcpp/sugar/matrix/row.h +115b6149b7f328f12440fd1e5a5a0300 *include/Rcpp/sugar/matrix/tools.h +23f94c2d6cbd068312a949798b403467 *include/Rcpp/sugar/matrix/upper_tri.h +30973622e9d3acef832c7e2578e0ddd0 *include/Rcpp/sugar/nona/nona.h +278c96c59d33653b53db01862911a17d *include/Rcpp/sugar/operators/Comparator.h +6c43390b2d47dd6b7d2bb7824d37061b *include/Rcpp/sugar/operators/Comparator_With_One_Value.h +c62f193c49b200ee28687469fb2e61c5 *include/Rcpp/sugar/operators/divides.h +dbc2f27e6693976f7e1d745db791b712 *include/Rcpp/sugar/operators/logical_operators__Vector__Vector.h +631ba1c3a5983fa36aba958fbe0fac01 *include/Rcpp/sugar/operators/logical_operators__Vector__primitive.h +57b8e523981ced17043df0a35db0503c *include/Rcpp/sugar/operators/minus.h +ce6f7cfa18cfcafb15ebd8eb8c45f802 *include/Rcpp/sugar/operators/not.h +da8a2c17103b00aeb0d205f76aaebf7d *include/Rcpp/sugar/operators/operators.h +2e6171e8d4ed6c21710aa0758e7f0536 *include/Rcpp/sugar/operators/plus.h +d129eac323c93bb69d99b023eb05812d *include/Rcpp/sugar/operators/r_binary_op.h +73722dc109290c63d68934f52637d27b *include/Rcpp/sugar/operators/times.h +5f9acbfddd1c397b017cfd5691293bb4 *include/Rcpp/sugar/operators/unary_minus.h +c5e2abc0a4e70db676f6f85b207c6fed *include/Rcpp/sugar/sets.h +813ff968a963e3058a58c469e070ef82 *include/Rcpp/sugar/sugar.h +89a193bed15037ce566fefe07f049d4b *include/Rcpp/sugar/sugar_forward.h +b4c3ecdf94025da94e6dde6eeafe8a44 *include/Rcpp/sugar/tools/iterator.h +f01c3fd8fe059517e03062b7d8422407 *include/Rcpp/sugar/undoRmath.h +894245a3f8d5c212ab9c808662c22160 *include/Rcpp/traits/char_type.h +d39c02a1033bce9b1193f12eee141171 *include/Rcpp/traits/enable_if.h +4a72487b73047f686e868b4c4cb44382 *include/Rcpp/traits/expands_to_logical.h +129c2e9c6e0a73fce5cebd72c14c2254 *include/Rcpp/traits/get_na.h +e20649d25657d2a949492331c7758b7c *include/Rcpp/traits/has_iterator.h +235a43df43936d00128253ef7005915c *include/Rcpp/traits/has_na.h +3cd036e8adc3672b90bf08504e9f7a76 *include/Rcpp/traits/if_.h +f6618d0224159bfc48c1df1d83828d68 *include/Rcpp/traits/init_type.h +569027e71fdb2bda19c8184a12d08762 *include/Rcpp/traits/integral_constant.h +77534bb63952ddf18c96abc66b5cb2d7 *include/Rcpp/traits/is_arithmetic.h +29571f5642930d175ef873140c776975 *include/Rcpp/traits/is_bool.h +4fa497cea2410fb4e662b866663bc0ac *include/Rcpp/traits/is_const.h +abcb7e2b556b94d82a09a8849a1c1096 *include/Rcpp/traits/is_convertible.h +cd901317f51083b5a6d3f2414fe82607 *include/Rcpp/traits/is_eigen_base.h +7bfb288fca1e46ed6b931500ad42a43d *include/Rcpp/traits/is_finite.h +b7587e1b4122a84038f7a5800b535e8e *include/Rcpp/traits/is_infinite.h +abd4686b93894a8a221f6da4f3bf74f0 *include/Rcpp/traits/is_module_object.h +d97fd982b65ea3d8efc6455b3b1e8102 *include/Rcpp/traits/is_na.h +60122e02e5bb562e557db0c38e17f790 *include/Rcpp/traits/is_nan.h +b4d4b4ecdcc75f7004378d9a4c52c490 *include/Rcpp/traits/is_pointer.h +74d6de2afc81c98a4e34fb368aea6a53 *include/Rcpp/traits/is_primitive.h +2a7ce1cf1b5479b6453c7c28d346bcfa *include/Rcpp/traits/is_reference.h +5e2acd97071b71e05d9b11a3f96387e5 *include/Rcpp/traits/is_sugar_expression.h +28916414af7cdb5b5bf9673bffe3fed8 *include/Rcpp/traits/is_trivial.h +2aa827ff4a611723f8fda7e58c9225d7 *include/Rcpp/traits/is_wide_string.h +d5851783d57175a54f0ce813d3accc01 *include/Rcpp/traits/longlong.h +d2d2d22f014dbda73370de85977494be *include/Rcpp/traits/matrix_interface.h +4165bd63dd3b616e807d730a1909b1d6 *include/Rcpp/traits/module_wrap_traits.h +df92a5456b88f77415691532c9cc8e1f *include/Rcpp/traits/named_object.h +e9717cf30ad078a3722702d54d744b11 *include/Rcpp/traits/num2type.h +fda43f65172234cb8e672b725ff21dc3 *include/Rcpp/traits/one_type.h +3ab68cc3b397346dde5c071d6b1dc2ca *include/Rcpp/traits/r_sexptype_traits.h +5bc497b1de2c051a3fb5e68e2d9d429b *include/Rcpp/traits/r_type_traits.h +2c55008e8515714263346d6c3cdeb35c *include/Rcpp/traits/remove_const.h +0830e491fc6a03ab6c735a215fa70ee0 *include/Rcpp/traits/remove_const_and_reference.h +49e7441fad045085e944a89c2b6d2f14 *include/Rcpp/traits/remove_reference.h +f97d07869949020279d1cef6ccb03abd *include/Rcpp/traits/result_of.h +10df0fad7bfeca54513814e89fd28d60 *include/Rcpp/traits/same_type.h +9091fcb005196d81ed41c6a89550e89a *include/Rcpp/traits/storage_type.h +6ffcd9b3ae200cb9f82bf43df519f3a4 *include/Rcpp/traits/traits.h +3d6fc7e388a23053d99a353535ae1275 *include/Rcpp/traits/un_pointer.h +05cbea355adce5b3921828e263fbf87d *include/Rcpp/traits/wrap_type_traits.h +2b15f8d9556718b58864deb05cba5afe *include/Rcpp/unwindProtect.h +4f9f79e3346010125c9659ebd7ad34db *include/Rcpp/utils/tinyformat.h +dedbf46dfae724476eedb59622b6c0be *include/Rcpp/utils/tinyformat/tinyformat.h +89a07678f678cfb48de4bd3d4420ea64 *include/Rcpp/vector/00_forward_Vector.h +4fe970f8b2608fb97026142528d21518 *include/Rcpp/vector/00_forward_proxy.h +411c3c52a0011d4fdd9392637172a97d *include/Rcpp/vector/ChildVector.h +d4c4878eede03e50c776afcf7836fc7a *include/Rcpp/vector/DimNameProxy.h +47f675c64171ec8e4072036d972aad4f *include/Rcpp/vector/LazyVector.h +020c11693ef729783f6ce9c70e0b3a86 *include/Rcpp/vector/ListOf.h +bd73507d75d9178924fc00b70b1f6f55 *include/Rcpp/vector/Matrix.h +a6c5cdec475185adc2b61152bc9379de *include/Rcpp/vector/MatrixBase.h +3a7e583f12436fd76a2329bbdc604507 *include/Rcpp/vector/MatrixColumn.h +2001eb2ae77a9601cb236e760b20ff4c *include/Rcpp/vector/MatrixRow.h +dabec153dcf826b040e592e1c60fc37f *include/Rcpp/vector/RangeIndexer.h +c71d7fdd2ecbadeff8068998d3501c5c *include/Rcpp/vector/SubMatrix.h +d82ab8c34035edc7ac37af4d619406cc *include/Rcpp/vector/Subsetter.h +25b4cdae0a3c88788551fac10d73c797 *include/Rcpp/vector/Vector.h +99dc1e7a939e6f11ec33588c382517cd *include/Rcpp/vector/VectorBase.h +0c3ff20020b3ff5248826ff796752946 *include/Rcpp/vector/const_generic_proxy.h +c76a4bfbaf1c61171799f258f6393ea4 *include/Rcpp/vector/const_string_proxy.h +82421a927c857b34a028774399518289 *include/Rcpp/vector/converter.h +fe60090372703d0fd887c32e45f944a3 *include/Rcpp/vector/generic_proxy.h +026adf34a827731798dbf3b6c3159421 *include/Rcpp/vector/instantiation.h +8bfaa9746b1126a74324cab8b5170439 *include/Rcpp/vector/no_init.h +84dbe92383dc935b5576814fd6937418 *include/Rcpp/vector/proxy.h +86af06f9720947eaa083c4fa9bc11289 *include/Rcpp/vector/string_proxy.h +07c9204ef548fd66d5e42ff84cf1da09 *include/Rcpp/vector/swap.h +671bf25ba62a315729da938f1c0184bc *include/Rcpp/vector/traits.h +b53a80ae2aa1de12e8bd0fbff69c904b *include/Rcpp/vector/vector_from_string.h +59452eca17fff2736ddd8c05fe1fc500 *include/RcppCommon.h +83051c918c676565c50377280f3d80a9 *include/doxygen/Examples.h +b57340e2fb6cfc8411f7dba6f8235f5e *libs/x64/Rcpp.dll +74922732c7edf1ebed75058264169e9a *libs/x64/symbols.rds +fc570e7927219c2ed9bdb13ca05134d9 *prompt/module.Rd +e78047bdda3db5af33456370e65a98d0 *skeleton/Num.cpp +ceccb01282e3e574aa78fec0102df6da *skeleton/Rcpp_modules_examples.Rd +519be498e2f048a2750863a147964737 *skeleton/manual-page-stub.Rd +411d02aaf3c409722bf6a39a4a4ffa90 *skeleton/rcpp_hello_world.R +736db59264020d28cb1870868cfa916b *skeleton/rcpp_hello_world.Rd +329380236bdae3a32e349531c0ee2d54 *skeleton/rcpp_hello_world.cpp +2c1227dd8097d9fca8040f3d29f59633 *skeleton/rcpp_hello_world.h +0da63b615f705aa9dfa2e91b15a0ec3a *skeleton/rcpp_hello_world_attributes.cpp +9cbc66836028cfab4df53c8e1c4ccbf5 *skeleton/rcpp_module.cpp +87e64fbfae8826697bdfd1020d2b2641 *skeleton/stdVector.cpp +32a99eb2d472350734277940a2e2a1bb *skeleton/zzz.R +7fb9967c5d48052f8dc6167b1ee619d3 *tinytest/bin/amd64/r-cran-testrcpppackage_0.1.0-1_amd64.deb +56b8f712e86e0113715ead494065346e *tinytest/bin/i386/r-cran-testrcpppackage_0.1.0-1_i386.deb +08aa53008c9d0b88446c534cbf91a165 *tinytest/cpp/DataFrame.cpp +caded512e0425b790380edddc00967f4 *tinytest/cpp/Environment.cpp +378c5ca02f76666d28abc7f0f0bbb82a *tinytest/cpp/Exceptions_nocall.cpp +b81bf018da788eadaf8f101144e1841b *tinytest/cpp/Function.cpp +8469685bd02cea093f7fa44128b1af31 *tinytest/cpp/InternalFunction.cpp +a9b57d92bffc646ac6f074c98c81db6e *tinytest/cpp/InternalFunctionCPP11.cpp +62bd3687f6fae5f022287932343b34b0 *tinytest/cpp/ListOf.cpp +4592f91b2ff1a6cea2125115ce8f75e4 *tinytest/cpp/Matrix.cpp +c171e3f43d4293bcfb4341cdc1c2bd29 *tinytest/cpp/Module.cpp +ae344d14e4a2711ff2462d02ac0baa78 *tinytest/cpp/RObject.cpp +83bb109ce6845fbdb08a732527556ff1 *tinytest/cpp/Reference.cpp +431733375a744f92c308b95f9d402f42 *tinytest/cpp/S4.cpp +239bf07c23051fc0318de2f80e95385c *tinytest/cpp/String.cpp +bf2f556311ef8884928d6db63fccf112 *tinytest/cpp/Subset.cpp +83aac83aff61967c16d00935b96700f2 *tinytest/cpp/Vector.cpp +2834dfe1270c0e1cc24aba14721c09da *tinytest/cpp/VectorOld.cpp +aa3497bfcf9b9d14f35e9558a19fc1b4 *tinytest/cpp/XPtr.cpp +d19479e6aab83b12124389782f4bf739 *tinytest/cpp/algorithm.cpp +219e1d71106fb3bb1253ce60affbb398 *tinytest/cpp/as.cpp +12c4f9c7f7323095f118fc9c11ace5da *tinytest/cpp/attributes.cpp +7dd5700e27b702cba4cede554cdb65ba *tinytest/cpp/attributes.hpp +fdf3557dcb7e7fbaa37afcbfaba4b088 *tinytest/cpp/coerce.cpp +b126529d2903ea6eb82caa799e1162c3 *tinytest/cpp/dates.cpp +9c81ac1fb25a970b84e543aef34d6cde *tinytest/cpp/dispatch.cpp +385abbb997641176de511ef784b87b45 *tinytest/cpp/embeddedR.cpp +3142234408f0d17bb7edd2238f6beb78 *tinytest/cpp/embeddedR2.cpp +4e6b3693278fd9c33e5fc7724e268fa8 *tinytest/cpp/exceptions.cpp +39b2883e8175beaaa6a6430a71378398 *tinytest/cpp/language.cpp +cdd742bd240621d7e33ecf4818691e66 *tinytest/cpp/misc.cpp +31eb0032506e988316357913ffc28dee *tinytest/cpp/modref.cpp +705309cd5376196a486d14c73f76ba29 *tinytest/cpp/na.cpp +05a686ca3070780f8dcb1a1de321797e *tinytest/cpp/rcppversion.cpp +511f2da216d7480c3bd4b50d48983799 *tinytest/cpp/rmath.cpp +c7bb688561ccc8a9039413782640be7e *tinytest/cpp/stack.cpp +37f1770bce35bf5f2c6a523d42e1ea75 *tinytest/cpp/stats.cpp +be7f344d4bd516f6d69d7107dfb88659 *tinytest/cpp/sugar.cpp +956e39fb6eb566987b3130a85b4da3c6 *tinytest/cpp/support.cpp +c8a357d67dd56b672cd7616e7bbbf520 *tinytest/cpp/table.cpp +ba3dad0e41bbd4c0b1a74f550e8247f2 *tinytest/cpp/wrap.cpp +2db3a044a68e8cf5d76a9a1473dee526 *tinytest/cpp/wstring.cpp +54073056db0ba60cf0b1707c4b6db85c *tinytest/src/r-cran-testrcpppackage_0.1.0-1.diff.gz +1d2156181f8816c31306d77f4760697c *tinytest/src/r-cran-testrcpppackage_0.1.0-1.dsc +18c540b0b12feac586f57f2411ed378e *tinytest/src/r-cran-testrcpppackage_0.1.0-1_amd64.changes +7fb9967c5d48052f8dc6167b1ee619d3 *tinytest/src/r-cran-testrcpppackage_0.1.0-1_amd64.deb +84ddc3de28ce0c458d6f19f91bc1710d *tinytest/src/r-cran-testrcpppackage_0.1.0-1_i386.changes +56b8f712e86e0113715ead494065346e *tinytest/src/r-cran-testrcpppackage_0.1.0-1_i386.deb +7263661801b44d075a3345ff4a1faffa *tinytest/testRcppAttributePackage/DESCRIPTION +f06e063ca806e7fca22eb7482b2af2d1 *tinytest/testRcppAttributePackage/NAMESPACE +c694664176af9bd21deb0248fdddbe7e *tinytest/testRcppAttributePackage/src/rcpp_test.cpp +1a5f53d4b6ba9e3b98fe1eec48a5eb9b *tinytest/testRcppClass/DESCRIPTION +f926317ac3486e08433a0fbdf3153efe *tinytest/testRcppClass/NAMESPACE +03f336c9faea79524a608b9dd1d22a92 *tinytest/testRcppClass/R/load.R +ec8250809d340e191fbf0b04c344fe00 *tinytest/testRcppClass/R/rcpp_hello_world.R +60b39ca81dc918e7fe8a0c4737079396 *tinytest/testRcppClass/man/Rcpp_class_examples.Rd +736db59264020d28cb1870868cfa916b *tinytest/testRcppClass/man/rcpp_hello_world.Rd +fe2b352c0aa449acae8ae667b82aebb9 *tinytest/testRcppClass/man/testRcppClass-package.Rd +5b71e6b5e64bc8418e6b9adf26c09cc8 *tinytest/testRcppClass/src/Num.cpp +2d584977e96934c0bdae19cef07e3e74 *tinytest/testRcppClass/src/init.c +5e17501af84c7deb94e69c8c48abc6dc *tinytest/testRcppClass/src/rcpp_hello_world.cpp +5c03d3d1426cf6886a0f6f6c412bb456 *tinytest/testRcppClass/src/rcpp_hello_world.h +0abb0d55f1edc5ddb19ca87ed5c370f1 *tinytest/testRcppClass/src/rcpp_module.cpp +3326bf4e52a561d08f9aa1370333222b *tinytest/testRcppClass/src/stdVector.cpp +f369e8eabd84792764737850dc9cf599 *tinytest/testRcppClass/tests/classes.R +55a2cc182d8bdab7df8367bb2c9ae4f1 *tinytest/testRcppInterfaceExporter/DESCRIPTION +caccac1441b38bc3b9d91f9e189b1d68 *tinytest/testRcppInterfaceExporter/NAMESPACE +cf3fc9dfc4a7d7e88dd0bcc32220fee3 *tinytest/testRcppInterfaceExporter/R/RcppExports.R +f9c87d177bece784bca40b2294329568 *tinytest/testRcppInterfaceExporter/R/exporter.R +cdb9489e21b94623f0f1e7d4af8ec157 *tinytest/testRcppInterfaceExporter/inst/include/testRcppInterfaceExporter.h +1cbd306e27aed3fcb7b5fbc34d42b39d *tinytest/testRcppInterfaceExporter/inst/include/testRcppInterfaceExporter_RcppExports.h +5f0d00b4fa5ddc900e41058abf3f92ef *tinytest/testRcppInterfaceExporter/src/RcppExports.cpp +0805a3830147dedf4a37a91f9ad66a4d *tinytest/testRcppInterfaceExporter/src/exporter.cpp +53dfff77ccb443103f44fb52eea3187b *tinytest/testRcppInterfaceExporter/src/unwound.h +d4ceb27b690d25e3bf791340e1082ede *tinytest/testRcppInterfaceUser/DESCRIPTION +98aef5f5fafb61bfb9c2e3687ea7cd74 *tinytest/testRcppInterfaceUser/NAMESPACE +a7632eb2a8e768dc6305ac25e4d1c666 *tinytest/testRcppInterfaceUser/R/user.R +d41d8cd98f00b204e9800998ecf8427e *tinytest/testRcppInterfaceUser/src/config.h +a195376bccd32edf2ec234585cdd19f1 *tinytest/testRcppInterfaceUser/src/unwound.h +44a229bee1d2fd44365e82d64aff2e23 *tinytest/testRcppInterfaceUser/src/user.cpp +c0e76426243757398223031c7c4c46b0 *tinytest/testRcppInterfaceUser/tests/tests.R +fb4466d7edc9f03ab23dc0d557e49145 *tinytest/testRcppModule/DESCRIPTION +add4aaed2d306765ce493922461f3a55 *tinytest/testRcppModule/NAMESPACE +bd40b50ea592b9c3c0cfe79de3f6eb1d *tinytest/testRcppModule/R/rcpp_hello_world.R +81dadeb632a55b8ce2ad71cf37d2c1ce *tinytest/testRcppModule/R/zzz.R +0371f14c3812cd1a564488ca96b11ca2 *tinytest/testRcppModule/man/Rcpp_modules_examples.Rd +2deeefcb97dc4727ba42f47594ad3be8 *tinytest/testRcppModule/man/rcpp_hello_world.Rd +079d3f03a16107fd9ef8fe40b6175a9e *tinytest/testRcppModule/man/testRcppModule-package.Rd +1999f8a3ad18e75c899c980902146d80 *tinytest/testRcppModule/src/Num.cpp +d1c8b83cdba82518ad248f4612e22802 *tinytest/testRcppModule/src/init.c +5e17501af84c7deb94e69c8c48abc6dc *tinytest/testRcppModule/src/rcpp_hello_world.cpp +5c03d3d1426cf6886a0f6f6c412bb456 *tinytest/testRcppModule/src/rcpp_hello_world.h +30f4072a33ca51c385cba14d8c41e7fc *tinytest/testRcppModule/src/rcpp_module.cpp +974ce7cbf35e70ee51ee2f338d1a47ed *tinytest/testRcppModule/src/stdVector.cpp +af70d56c91a91ed55fc4da6c1f8b7ca5 *tinytest/testRcppModule/tests/modules.R +c83d5e7e43bdf9d149e62f8717facf73 *tinytest/testRcppPackage/DESCRIPTION +f46e0bbc90d649eaed05e1a1f953645d *tinytest/testRcppPackage/NAMESPACE +86700d82a2395c2d7c34f21ffb7dcaa4 *tinytest/testRcppPackage/R/rcpp_hello_world.R +8a4012c68853de0e7ddd4ec8dd3ef9da *tinytest/testRcppPackage/man/testRcppPackage-package.Rd +c980624db12b714ac2ec6bb7740c3030 *tinytest/testRcppPackage/src/rcpp_hello_world.cpp +3fc7d87c655d7c58790b18dadbf17462 *tinytest/testRcppPackage/src/rcpp_hello_world.h +d4d4b13e8e48f3d2dff079fa0cae4db2 *tinytest/test_algorithm.R +d43f4463ec22a001f10f70e5968b741e *tinytest/test_as.R +300fea4f491bc883fc8cf14cbf415e19 *tinytest/test_attribute_package.R +6fafd86f9d6036ddeec256f6520940fb *tinytest/test_attributes.R +645c61b59b44cf4a7d0a8935c94f30b8 *tinytest/test_binary_package.R +5c61d77db502333de43ef63ab5542947 *tinytest/test_client_package.R +6972e7398a0316ee9378d0235a98193e *tinytest/test_coerce.R +f848412bd201674571166f59141ead32 *tinytest/test_dataframe.R +f45441d68b2e1de3f59da4f83e222e6e *tinytest/test_date.R +f7020772ec2f52bca37aa52f328e8a4a *tinytest/test_dispatch.R +37c878dba3a8c6ee4a512d8ae49d0510 *tinytest/test_embedded_r.R +0bfe887104fa049afec792eb9e1d38ee *tinytest/test_environments.R +8d0384378c1530ae2651ed30077c3849 *tinytest/test_exceptions.R +d6b632cbcf1d0d2a809789a850393f04 *tinytest/test_exceptions_nocall.R +fb2c4e13c8c9b275e0dedd8b115032fb *tinytest/test_expose_class.R +2659ca40245f5942186d612cc050290e *tinytest/test_function.R +a979bf54492367431865c051efc150ca *tinytest/test_global_rostream.R +f98648470bc21b3fdbb3176e90f45129 *tinytest/test_interface.R +9fcdc77199f2adc16ddaab74ede5c15f *tinytest/test_internal_function.R +b1ec64c8809b5017cc83db4e63bb23e7 *tinytest/test_internal_function_cpp11.R +9be9c45f22b52977dfe322b18090e25a *tinytest/test_language.R +f3df4a9477700c9773503b0d72cb9f38 *tinytest/test_listof.R +642a072d490f3adf9ad7ccdc0b583c8c *tinytest/test_matrix.R +d820e9d99c8361bb9bcdff1df8748415 *tinytest/test_misc.R +3b74e9c0f70c24ec455b8325bd575ad1 *tinytest/test_modref.R +9f5d7a561daeacc250b8247c613031f4 *tinytest/test_module.R +4f1cb95ff3231714571275b5f60c21cc *tinytest/test_module_client_package.R +8fa4cb9335b9239ffce495337cbbe4b4 *tinytest/test_na.R +9f24ff45b6de5029cec235af1f643655 *tinytest/test_packageversion.R +50ac8801171cadb6ce7535680e3d7b4b *tinytest/test_quickanddirty.R +3e6d62cfbaa5aa087b4abde938e30ce4 *tinytest/test_rcpp_package_skeleton.R +12824f997493028fb75fb416fb4899bd *tinytest/test_reference.R +bf9528a41d909d19eda20947fe73d042 *tinytest/test_rmath.R +23cccaef77d1c7188a384e5e6400505e *tinytest/test_robject.R +ec2b5b9cab31cafb4b2cbdef00cd89e3 *tinytest/test_s4.R +0bd9a05a2ebcfc708aed3911d21a6dc7 *tinytest/test_stack.R +f0418bc8a48a4cd9b7819af6bad997ff *tinytest/test_stats.R +d164383dd85501e99acb936ee66210a7 *tinytest/test_string.R +3d9e890abd6a080315b84b99d6ed3843 *tinytest/test_subset.R +c562070a11cc7aadeb7efe23487e0b30 *tinytest/test_sugar.R +eea3406aec4fe65cae71db5baa9a0b51 *tinytest/test_sugar_var.R +46dcee8e76f26d5103efa5ad09441892 *tinytest/test_support.R +9a97f20a6edeb3f2d7184ed909f70958 *tinytest/test_system.R +44d3b675e624e692463ae9e9fe2776d0 *tinytest/test_table.R +25e2edab5fe1be72bd44e24d30fc59a1 *tinytest/test_vector.R +6a724a81b5a9281e7777b16ada40ac39 *tinytest/test_vector_old.R +6867abc5b68b7caa2b5920f67b4b6990 *tinytest/test_wrap.R +daae893ce0886eccb852f34104884837 *tinytest/test_wstring.R +141b15c12251e16fbd4901fd75e0659b *tinytest/test_xptr.R diff --git a/revdep/library/sprtt/new/Rcpp/NAMESPACE b/revdep/library/sprtt/new/Rcpp/NAMESPACE new file mode 100644 index 00000000..45a07c50 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/NAMESPACE @@ -0,0 +1,42 @@ +useDynLib(Rcpp, .registration = TRUE) + +import(methods) +importFrom(utils, capture.output, assignInNamespace, .DollarNames, prompt, + packageDescription, package.skeleton, glob2rx) + +exportClasses(Module, "C++Field", + "C++OverloadedMethods", + "C++Constructor", + "C++Class", "C++Object", "C++Function") + +S3method(.DollarNames, "C++Object") +S3method(.DollarNames, "Module") +exportMethods(prompt, show, .DollarNames, initialize, "formals<-") + +export(Module, + Rcpp.package.skeleton, + populate, + loadRcppModules, # deprecated since Rcpp 0.12.5 released May 2016 + setRcppClass, + loadRcppClass, + loadModule, + cppFunction, + exposeClass, + evalCpp, + sourceCpp, + compileAttributes, + registerPlugin, + RcppLdFlags, # deprecated since Rcpp 0.12.19 released Sep 2018 + LdFlags, # deprecated since Rcpp 0.12.19 released Sep 2018 + demangle, + sizeof, + cpp_object_initializer, + cpp_object_dummy, + Rcpp.plugin.maker, + getRcppVersion + ) +S3method(print, bytes) +S3method(format, Rcpp_stack_trace) +S3method(str, Rcpp_stack_trace) +S3method(print, Rcpp_stack_trace) +exportClass(RcppClass) diff --git a/revdep/library/sprtt/new/Rcpp/NEWS.Rd b/revdep/library/sprtt/new/Rcpp/NEWS.Rd new file mode 100644 index 00000000..22f0b7a4 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/NEWS.Rd @@ -0,0 +1,2934 @@ +\name{NEWS} +\title{News for Package \pkg{Rcpp}} +\newcommand{\ghpr}{\href{https://github.com/RcppCore/Rcpp/pull/#1}{##1}} +\newcommand{\ghit}{\href{https://github.com/RcppCore/Rcpp/issues/#1}{##1}} + +\section{Changes in Rcpp release version 1.0.10 (2023-01-12)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Unwind protection is enabled by default (Iñaki in \ghpr{1225}). + It can be disabled by defining \code{RCPP_NO_UNWIND_PROTECT} before + including \code{Rcpp.h}. \code{RCPP_USE_UNWIND_PROTECT} is not checked + anymore and has no effect. The associated plugin \code{unwindProtect} + is therefore deprecated and will be removed in a future release. + \item The 'finalize' method for Rcpp Modules is now eagerly materialized, + fixing an issue where errors can occur when Module finalizers are run + (Kevin in \ghpr{1231} closing \ghit{1230}). + \item Zero-row \code{data.frame} objects can receive \code{push_back} + or \code{push_front} (Dirk in \ghpr{1233} fixing \ghit{1232}). + \item One remaining \code{sprintf} has been replaced by + \code{snprintf} (Dirk and Kevin in \ghpr{1236} and \ghpr{1237}). + \item Several conversion warnings found by \code{clang++} have been + addressed (Dirk in \ghpr{1240} and \ghpr{1241}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item The C++20, C++2b (experimental) and C++23 standards now have + plugin support like the other C++ standards (Dirk in \ghpr{1228}). + \item The source path for attributes received one more protection + from spaces (Dirk in \ghpr{1235} addressing \ghit{1234}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Several GitHub Actions have been updated. + } + } +} + +\section{Changes in Rcpp hotfix release version 1.0.9 (2022-07-02)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Accomodate C++98 compilation by adjusting attributes.cpp (Dirk in + \ghpr{1193} fixing \ghit{1192}) + \item Accomodate newest compilers replacing deprecated + \code{std::unary_function} and \code{std::binary_function} with + \code{std::function} (Dirk in \ghpr{1202} fixing \ghit{1201} and + CRAN request) + \item Upon removal from precious list, the tag is set to null + (Iñaki in \ghpr{1205} fixing \ghit{1203}) + \item Move constructor and assignment for strings have been added + (Dean Scarff in \ghpr{1219}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Adjust one overflowing column (Bill Denney in \ghpr{1196} fixing + \ghit{1195}) + \item Correct a typo in the FAQ (Marco Colombo in \ghpr{1217}) + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Accomodate four digit version numbers in unit test (Dirk) + \item Do not run complete test suite to limit test time to CRAN + preference (Dirk in \ghpr{1206}) + \item Small updates to the CI test containers have been made + \item Some of changes also applied to an interim release + 1.0.8.3 made for CRAN on 2022-03-14. + } + } +} + +\section{Changes in Rcpp release version 1.0.8 (2022-01-11)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item \code{STRICT_R_HEADERS} is now enabled by default, see + extensive discussion in \ghit{1158} closing \ghit{898}. + \item A new \code{#define} allows default setting of finalizer + calls for external pointers (Iñaki in \ghpr{1180} closing \ghit{1108}). + \item \code{Rcpp:::CxxFlags()} now quotes the include path generated, + (Kevin in \ghpr{1189} closing \ghit{1188}). + \item New header files \code{Rcpp/Light}, \code{Rcpp/Lighter}, + \code{Rcpp/Lightest} and default \code{Rcpp/Rcpp} for fine-grained + access to features (and compilation time) (Dirk \ghpr{1191} + addressing \ghpr{1168}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item A new option \code{signature} allows customization of + function signatures (Travers Ching in \ghpr{1184} and \ghpr{1187} fixing + \ghit{1182}) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The Rcpp FAQ has a new entry on how \emph{not} to grow a vector + (Dirk in \ghpr{1167}). + \item Some long-spurious calls to \code{RNGSope} have been removed + from examples (Dirk in \ghpr{1173} closing \ghit{1172}). + \item DOI reference in the bibtex files have been updated per JSS + request (Dirk in \ghpr{1186}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Some continuous integration components have been updated + (Dirk in \ghpr{1174}, \ghpr{1181}, and \ghpr{1190}). + } + } +} + +\section{Changes in Rcpp release version 1.0.7 (2021-07-06)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Refactored \code{Rcpp_PreserveObject} and \code{Rcpp_ReleaseObject} + which are now O(1) (Dirk and Iñaki in \ghpr{1133} and \ghpr{1135} + fixing \ghit{382} and \ghit{1081}). + \item A spuriously assigned variable was removed (Dirk in + \ghpr{1138} fixing \ghit{1137}). + \item Global \code{Rcout} and \code{Rcerr} objects are supported + via a compiler directive (Iñaki in \ghpr{1139} fixing \ghit{928}) + \item Add support for \code{Rcpp::message} (Dirk in \ghpr{1146} + fixing \ghit{1145}). + \item The \code{uint32_t} type is used throughout instead of + \code{unsigned int} (Dirk in \ghpr{1153} fixing \ghit{1152}). + \item The \code{cfloat} header for floating point limits is now + included (Dirk in \ghpr{1162} fixing \ghit{1161}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Packages with dots in their name can now have per-package + include files (Dirk in \ghpr{1132} fixing \ghit{1129}). + \item New argument \code{echo} to quieten optional evaluation in + \code{sourceCpp} (Dirk in \ghpr{1138} fixing \ghit{1126}). + } + \item Forthcoming Changes in Rcpp API: + \itemize{ + \item Starting with Rcpp 1.0.8 anticipated in January 2022, + \code{STRICT_R_HEADERS} will be enabled by default, see \ghit{1126}. + } + } +} + +\section{Changes in Rcpp release version 1.0.6 (2021-01-14)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Replace remaining few uses of \code{EXTPTR_PTR} with + \code{R_ExternalPtrAddr} (Kevin in \ghpr{1098} fixing + \ghit{1097}). + \item Add \code{push_back} and \code{push_front} for + \code{DataFrame} (Walter Somerville in \ghpr{1099} fixing + \ghit{1094}). + \item Remove a misleading-to-wrong comment (Mattias Ellert in + \ghpr{1109} cleaning up after \ghpr{1049}). + \item Address a sanitizer report by initializing two private + \code{bool} variables (Benjamin Christoffersen in \ghpr{1113}). + \item External pointer finalizer toggle default values were + corrected to true (Dirk in \ghpr{1115}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Several URLs were updated to https and/or new addresses (Dirk). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Added GitHub Actions CI using the same container-based setup + used previously, and also carried code coverage over (Dirk in + \ghpr{1128}). + } + \item Changes in Rcpp support functions: + \itemize{ + \item \code{Rcpp.package.skeleton()} avoids warning from R. (Dirk) + } + } +} + +\section{Changes in Rcpp release version 1.0.5 (2020-07-01)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The exception handler code in \ghpr{1043} was updated to ensure + proper include behavior (Kevin in \ghpr{1047} fixing \ghit{1046}). + \item A missing \code{Rcpp_list6} definition was added to support + R 3.3.* builds (Davis Vaughan in \ghpr{1049} fixing \ghit{1048}). + \item Missing \code{Rcpp_list{2,3,4,5}} definition were added to + the Rcpp namespace (Dirk in \ghpr{1054} fixing \ghit{1053}). + \item A further updated corrected the header include and provided + a missing else branch (Mattias Ellert in \ghpr{1055}). + \item Two more assignments are protected with \code{Rcpp::Shield} + (Dirk in \ghpr{1059}). + \item One call to \code{abs} is now properly namespaced with + \code{std::} (Uwe Korn in \ghpr{1069}). + \item String object memory preservation was corrected/simplified + (Kevin in \ghpr{1082}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Empty strings are not passed to \code{R CMD SHLIB} which was + seen with R 4.0.0 on Windows (Kevin in \ghpr{1062} fixing + \ghpr{1061}). + \item The \code{short_file_name()} helper function is safer with + respect to temporaries (Kevin in \ghpr{1067} fixing \ghit{1066}, + and \ghpr{1071} fixing \ghpr{1070}). + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Two \code{sample()} objects are now standard vectors and not + \code{R_alloc} created (Dirk in \ghpr{1075} fixing \ghpr{1074}). + } + \item Changes in Rcpp support functions: + \itemize{ + \item \code{Rcpp.package.skeleton()} adjusts for a (documented) + change in R 4.0.0 (Dirk in \ghpr{1088} fixing \ghpr{1087}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The pdf file of the earlier introduction is again typeset + with bibliographic information (Dirk). + \item A new vignette describing how to package C++ libraries has + been added (Dirk in \ghpr{1078} fixing \ghit{1077}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Travis CI unit tests now run a matrix over the versions of R + also tested at CRAN (rel/dev/oldrel/oldoldrel), and coverage runs + in parallel for a net speed-up (Dirk in \ghpr{1056} and + \ghpr{1057}). + \item The exceptions test is now partially skipped on Solaris as + it already is on Windows (Dirk in \ghpr{1065}). + \item The default CI runner was upgraded to R 4.0.0 (Dirk). + \item The CI matrix spans R 3.5, 3.6, r-release and r-devel (Dirk). + } + } +} + +\section{Changes in Rcpp version 1.0.4 (2020-03-13)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Safer \code{Rcpp_list*}, \code{Rcpp_lang*} and + \code{Function.operator()} (Romain in \ghpr{1014}, \ghit{1015}). + \item A number of \code{#nocov} markers were added (Dirk in + \ghpr{1036}, \ghpr{1042} and \ghpr{1044}). + \item Finalizer calls clear external pointer first (Kirill Müller and + Dirk in \ghpr{1038}). + \item Scalar operations with a rhs matrix no longer change the + matrix value (Qiang in \ghpr{1040} fixing (again) \ghit{365}). + \item \code{Rcpp::exception} and \code{Rcpp::stop} are now more + thread-safe (Joshua Pritikin in \ghpr{1043}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item The \code{cppFunction} helper now deals correctly with mulitple + \code{depends} arguments (TJ McKinley in \ghpr{1016} fixing + \ghit{1017}). + \item Invisible return objects are now supported via new option (Kun Ren + in \ghpr{1025} fixing \ghit{1024}). + \item Unavailable packages referred to in \code{LinkingTo} are now + reported (Dirk in \ghpr{1027} fixing \ghit{1026}). + \item The \code{sourceCpp} function can now create a debug DLL on + Windows (Dirk in \ghpr{1037} fixing \ghit{1035}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{.github/} directory now has more explicit guidance on + contributing, issues, and pull requests (Dirk). + \item The Rcpp Attributes vignette describe the new invisible return + object option (Kun Ren in \ghpr{1025}). + \item Vignettes are now included as pre-made pdf files (Dirk in \ghpr{1029}) + \item The Rcpp FAQ has a new entry on the recommended + \code{importFrom} directive (Dirk in \ghpr{1031} fixing \ghit{1030}). + \item The bib file for the vignette was once again updated to + current package versions (Dirk). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Added unit test to check if C++ version remains remains aligned + with the package number (Dirk in \ghpr{1022} fixing \ghit{1021}). + \item The unit test system was switched to tinytest (Dirk in + \ghpr{1028}, \ghpr{1032}, \ghpr{1033}). + } + } +} + +\section{Changes in Rcpp version 1.0.3 (2019-11-08)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Compilation can be sped up by skipping Modules headers via a + toggle \code{RCPP_NO_MODULES} (Kevin in \ghpr{995} for \ghit{993}). + \item Compilation can be sped up by toggling \code{RCPP_NO_RTTI} which + implies \code{RCPP_NO_MODULES} (Dirk in \ghpr{998} fixing \ghit{997}). + \item \code{XPtr} tags are now preserved in \code{as<>} (Stephen Wade + in \ghpr{1003} fixing \ghit{986}, plus Dirk in \ghpr{1012}). + \item A few more temporary allocations are now protected from garbage + collection (Romain Francois in \ghpr{1010}, and Dirk in \ghpr{1011}). + } + \item Changes in Rcpp Modules: + \itemize{ + \item Improved initialization via explicit \code{Rcpp::} prefix + (Riccardo Porreca in \ghpr{980}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item A unit test for Rcpp Class exposure was updated to not fail under + r-devel (Dirk in \ghpr{1008} fixing \ghit{1006}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{Rcpp-modules} vignette received a major review and + edit (Riccardo Porreca in \ghpr{982}). + \item Minor whitespace alignments and edits were made in three + vignettes following the new \pkg{pinp} release (Dirk). + \item New badges for DOI and CRAN and BioConductor reverse dependencies + have been added to README.md (Dirk). + \item Vignettes are now included pre-made (Dirk in \ghpr{1005} + addressing \ghit{1004})). + \item The Rcpp FAQ has two new entries on 'no modules / no rtti' and + exceptions across shared libraries (Dirk in \ghpr{1009}). + } + } +} + +\section{Changes in Rcpp version 1.0.2 (2019-07-20)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Files in \code{src/} are now consistentely lowercase (Dirk + in \ghpr{956}). + \item The Rcpp 'API Version' is now accessible via + \code{getRcppVersion()} (Dirk in \ghpr{963}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item The second END wrapper macro also gets \code{UNPROTECT} and + a variable reference suppressing compiler warnings (Dirk in + \ghpr{953} fixing \ghit{951}). + \item Default function arguments are parsed correctly (Pierrick + Roger in \ghpr{977} fixing \ghit{975}) + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Added decreasing parameter to \code{sort_unique()} + (James Balamuta in \ghpr{958} addressing \ghit{950}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Travis CI unit tests are now always running irrespective of + the package version (Dirk in \ghpr{954}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{Rcpp-modules} vignette now covers the + \code{RCPP_EXPOSED_*} macros, and the \code{Rcpp-extending} vignette + references it (Ralf Stubner in \ghpr{959} fixing \ghit{952}). + } + } +} + +\section{Changes in Rcpp version 1.0.1 (2019-03-17)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Subsetting is no longer limited by an integer range (William + Nolan in \ghpr{920} fixing \ghit{919}). + \item Error messages from subsetting are now more informative + (Qiang and Dirk). + \item \code{Shelter} increases count only on non-null objects + (Dirk in \ghpr{940} as suggested by Stepan Sindelar in \ghit{935}). + \item \code{AttributeProxy::set()} and a few related setters get + \code{Shield<>} to ensure \code{rchk} is happy (Romain in \ghpr{947} + fixing \ghit{946}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item A new plugin was added for C++20 (Dirk in \ghpr{927}) + \item Fixed an issue where 'stale' symbols could become registered in + RcppExports.cpp, leading to linker errors and other related issues + (Kevin in \ghpr{939} fixing \ghit{733} and \ghit{934}). + \item The wrapper macro gets an \code{UNPROTECT} to ensure \code{rchk} + is happy (Romain in \ghpr{949}) fixing \ghit{948}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Three small corrections were added in the 'Rcpp Quickref' + vignette (Zhuoer Dong in \ghpr{933} fixing \ghit{932}). + \item The \code{Rcpp-modules} vignette now has documentation for + \code{.factory} (Ralf Stubner in \ghpr{938} fixing \ghit{937}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item Travis CI again reports to CodeCov.io (Dirk and Ralf Stubner in + \ghpr{942} fixing \ghit{941}). + } + } +} + +\section{Changes in Rcpp version 1.0.0 (2018-11-05)}{ + \itemize{ + \item Happy tenth birthday to Rcpp, and hello release 1.0 ! + \item Changes in Rcpp API: + \itemize{ + \item The empty destructor for the \code{Date} class was removed + to please g++-9 (prerelease) and \code{-Wdeprecated-copy} (Dirk). + \item The constructor for \code{NumericMatrix(not_init(n,k))} was + corrected (Romain in \ghpr{904}, Dirk in \ghpr{905}, and also + Romain in \ghpr{908} fixing \ghpr{907}). + \item \code{Rcpp::String} no longer silently drops embedded + \code{NUL} bytes in strings but throws new Rcpp exception + \code{embedded_nul_in_string}. (Kevin in \ghpr{917} fixing \ghit{916}). + } + \item Changes in Rcpp Deployment: + \itemize{ + \item The Dockerfile for Continuous Integration sets the required + test flag (for release versions) inside the container (Dirk). + \item Correct the \code{R CMD check} call to skip vignettes (Dirk). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item A new \code{[[Rcpp::init]]} attribute allows function + registration for running on package initialization (JJ in + \ghpr{903}). + \item Sort the files scanned for attributes in the C locale for + stable output across systems (JJ in \ghpr{912}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The 'Rcpp Extending' vignette was corrected and refers to + \code{EXPOSED} rather than \code{EXPORTED} (Ralf Stubner in + \ghpr{910}). + \item The 'Unit test' vignette is no longer included (Dirk in + \ghpr{914}). + } + } +} + +\section{Changes in Rcpp version 0.12.19 (2018-09-20)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The \code{no_init()} accessor for vectors and matrices is + now wrapped in \code{Shield<>()} to not trigger \code{rchk} + warnings (Kirill Müller in \ghpr{893} addressing \ghit{892}). + \item \code{STRICT_R_HEADERS} will be defined twelve months from + now; until then we protect it via \code{RCPP_NO_STRICT_HEADERS} + which can then be used to avoid the definition; downstream + maintainers are encouraged to update their packages as needed + (Dirk in \ghpr{900} beginning to address \ghit{898}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Added \code{[[Rcpp::init]]} attribute for registering C++ + functions to run during package initialization (JJ in \ghpr{903} + addressing \ghit{902}). + } + \item Changes in Rcpp Modules: + \itemize{ + \item Improved \code{exposeClass} functionality along with added + test (Martin Lysy in \ghpr{886} fixing \ghit{879}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Two typos were fixed in the Rcpp Sugar vignette (Patrick + Miller in \ghpr{895}). + \item Several vignettes now use the \code{collapse} argument to + show output in the corresponding code block. + } + \item Changes in Rcpp Deployment: + \itemize{ + \item The old \code{LdFlags()} build helper was marked as + deprecated [but removed for release] (Dirk in \ghpr{887}). + \item Dockerfiles for continuous integration, standard deployment + and 'plus sized' deployment are provided along with builds + (Dirk in \ghpr{894}). + \item Travis CI now use the \code{rcpp/ci} container for tests + (Dirk in \ghpr{896}). + } + } +} + +\section{Changes in Rcpp version 0.12.18 (2018-07-21)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The \code{StringProxy::operator==} is now \code{const} + correct (Romain in \ghpr{855} fixing \ghit{854}). + \item The \code{Environment::new_child()} is now \code{const} + (Romain in \ghpr{858} fixing \ghit{854}). + \item Next \code{eval} codes now properly unwind (Lionel in the large + and careful \ghpr{859} fixing \ghit{807}). + \item In debugging mode, more type information is shown on + \code{abort()} (Jack Wasey in \ghpr{860} and \ghpr{882} fixing + \ghit{857}). + \item A new class was added which allow suspension of the RNG + synchronisation to address an issue seen in \CRANpkg{RcppDE} + (Kevin in \ghpr{862}). + \item Evaluation calls now happen in the \code{base} environment + (which may fix an issue seen between \CRANpkg{conflicted} and some + BioConductor packages) (Kevin in \ghpr{863} fixing \ghit{861}). + \item Call stack display on error can now be controlled more + finely (Romain in \ghpr{868}). + \item The new \code{Rcpp_fast_eval} is used instead of + \code{Rcpp_eval} though this still requires setting + \code{RCPP_USE_UNWIND_PROTECT} before including \code{Rcpp.h} (Qiang + Kou in \ghpr{867} closing \ghit{866}). + \item The \code{Rcpp::unwindProtect()} function extracts the + unwinding from the \code{Rcpp_fast_eval()} function and makes it + more generally available. (Lionel in \ghpr{873} and \ghpr{877}). + \item The \code{tm_gmtoff} part is skipped on AIX too + (\ghpr{876}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item The \code{sourceCpp()} function now evaluates R code in the + correct local environment in which a function was compiled (Filip + Schouwenaars in \ghpr{852} and \ghpr{869} fixing \ghit{851}). + \item Filenames are now sorted in a case-insenstive way so that + the \code{RcppExports} files are more stable across locales (Jack + Wasey in \ghpr{878}). + } + \item Changes in Rcpp Sugar: + \itemize{ + \item The sugar functions \code{min} and \code{max} now recognise + empty vectors (Dirk in \ghpr{884} fixing \ghit{883}). + } + } +} + + +\section{Changes in Rcpp version 0.12.17 (2018-05-09)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The random number \code{Generator} class no longer inherits from + \code{RNGScope} (Kevin in \ghpr{837} fixing \ghit{836}). + \item A new class, \code{SuspendRNGSynchronizationScope}, can be created + and used to ensure that calls to Rcpp functions do not attempt to call + \code{::GetRNGstate()} or \code{::PutRNGstate()} for the duration of + some code block. + \item A spurious parenthesis was removed to please gcc8 (Dirk + fixing \ghit{841}) + \item The optional \code{Timer} class header now undefines + \code{FALSE} which was seen to have side-effects on some platforms + (Romain in \ghpr{847} fixing \ghpr{846}). + \item Optional \code{StoragePolicy} attributes now also work for + string vectors (Romain in \ghpr{850} fixing \ghit{849}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item A few old typesetting conventions from the prior Rnw format + have been corrected (Peter Hickey in \ghpr{831}; Joris Meys; Dirk) + \item Two internal links to the introduction published in JSS have been + updated to the changed filename given the newer TAS introduction. + \item Some remaining backticks were replaced with straight quotes + (Ralf Stubner in \ghpr{845}). + \item A citation to the Rcpp introducion in the The American + Statistician has been added to the introductory and FAQ vignettes. + } + } +} + +\section{Changes in Rcpp version 0.12.16 (2018-03-08)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Rcpp now sets and puts the RNG state upon each entry to an Rcpp + function, ensuring that nested invocations of Rcpp functions manage the + RNG state as expected (Kevin in \ghpr{825} addressing \ghit{823}). + \item The \code{R::pythag} wrapper has been commented out; the underlying + function has been gone from R since 2.14.0, and \code{::hypot()} (part of + C99) is now used unconditionally for complex numbers (Dirk in \ghpr{826}). + \item The \code{long long} type can now be used on 64-bit Windows (Kevin + in \ghpr{811} and again in \ghpr{829} addressing \ghit{804}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Code generated with \code{cppFunction()} now uses \code{.Call()} + directly (Kirill Müller in \ghpr{813} addressing \ghit{795}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The Rcpp FAQ vignette is now indexed as `Rcpp-FAQ`; a stale Gmane + reference was removed and entry for getting compilers under Conda was added. + \item The top-level README.md now has a \emph{Support} section. + \item The Rcpp.bib reference file was refreshed to current versions. + } + } +} + +\section{Changes in Rcpp version 0.12.15 (2018-01-16)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Calls from exception handling to \code{Rf_warning()} now correctly + set an initial format string (Dirk in \ghpr{777} fixing \ghit{776}). + \item The 'new' Date and Datetime vectors now have \code{is_na} methods + too. (Dirk in \ghpr{783} fixing \ghit{781}). + \item Protect more temporary \code{SEXP} objects produced by \code{wrap} + (Kevin in \ghpr{784}). + \item Use public R APIs for \code{new_env} (Kevin in \ghpr{785}). + \item Evaluation of R code is now safer when compiled against R + 3.5 (you also need to explicitly define \code{RCPP_USE_UNWIND_PROTECT} + before including \code{Rcpp.h}). Longjumps of all kinds (condition + catching, returns, restarts, debugger exit) are appropriately + detected and handled, e.g. the C++ stack unwinds correctly + (Lionel in \ghpr{789}). [ Committed but subsequently disabled in release + 0.12.15 ] + \item The new function \code{Rcpp_fast_eval()} can be used for + performance-sensitive evaluation of R code. Unlike + \code{Rcpp_eval()}, it does not try to catch errors with + \code{tryEval} in order to avoid the catching overhead. While this + is safe thanks to the stack unwinding protection, this also means + that R errors are not transformed to an \code{Rcpp::exception}. If + you are relying on error rethrowing, you have to use the slower + \code{Rcpp_eval()}. On old R versions \code{Rcpp_fast_eval()} + falls back to \code{Rcpp_eval()} so it is safe to use against any + versions of R (Lionel in \ghpr{789}). [ Committed but subsequently + disabled in release 0.12.15 ] + \item Overly-clever checks for \code{NA} have been removed (Kevin in + \ghpr{790}). + \item The included tinyformat has been updated to the current version, + Rcpp-specific changes are now more isolated (Kirill in \ghpr{791}). + \item Overly picky \emph{fall-through} warnings by gcc-7 regarding + \code{switch} statements are now pre-empted (Kirill in \ghpr{792}). + \item Permit compilation on ANDROID (Kenny Bell in \ghpr{796}). + \item Improve support for NVCC, the CUDA compiler (Iñaki Ucar in + \ghpr{798} addressing \ghit{797}). + \item Speed up tests for NA and NaN (Kirill and Dirk in \ghpr{799} and + \ghpr{800}). + \item Rearrange stack unwind test code, keep test disabled for now (Lionel + in \ghpr{801}). + \item Further condition away protect unwind behind #define (Dirk in + \ghpr{802}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Addressed a missing Rcpp namespace prefix when generating a C++ + interface (James Balamuta in \ghpr{779}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The Rcpp FAQ now shows \code{Rcpp::Rcpp.plugin.maker()} and not the + outdated \code{:::} use applicable non-exported functions. + } + } +} + +\section{Changes in Rcpp version 0.12.14 (2017-11-17)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item New const iterators functions \code{cbegin()} and \code{cend()} + added to \code{MatrixRow} as well (Dan Dillon in \ghpr{750}). + \item The \code{Rostream} object now contains a \code{Buffer} rather than + allocating one (Kirill Müller in \ghpr{763}). + \item New \code{DateVector} and \code{DatetimeVector} classes are now the + default fully deprecating the old classes as announced one year ago. + } + \item Changes in Rcpp Package: + \itemize{ + \item DESCRIPTION file now list doi information per CRAN suggestion. + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Update CITATION file with doi information and PeerJ preprint. + } + } +} + +\section{Changes in Rcpp version 0.12.13 (2017-09-24)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item New const iterators functions \code{cbegin()} and \code{cend()} have + been added to several vector and matrix classes (Dan Dillon and James + Balamuta in \ghpr{748}) starting to address \ghit{741}). + } + \item Changes in Rcpp Modules: + \itemize{ + \item Misplacement of one parenthesis in macro \code{LOAD_RCPP_MODULE} + was corrected (Lei Yu in \ghpr{737}) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Rewrote the macOS sections to depend on official documentation due + to large changes in the macOS toolchain. (James Balamuta in \ghpr{742} + addressing issue \ghit{682}). + \item Added a new vignette \sQuote{Rcpp-introduction} based on new PeerJ + preprint, renamed existing introduction to \sQuote{Rcpp-jss-2011}. + \item Transitioned all vignettes to the 'pinp' RMarkdown template + (James Balamuta and Dirk Eddelbuettel in \ghpr{755} addressing + issue \ghit{604}). + \item Added an entry on running `compileAttributes()` twice to the + Rcpp-FAQ (\ghit{#745}). + } + } +} + +\section{Changes in Rcpp version 0.12.12 (2017-07-13)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The \code{tinyformat.h} header now ends in a newline (\ghit{701}). + \item Fixed rare protection error that occurred when fetching stack traces + during the construction of an Rcpp exception (Kirill Müller in \ghpr{706}). + \item Compilation is now also possibly on Haiku-OS (Yo Gong in \ghpr{708} + addressing \ghit{707}). + \item Dimension attributes are explicitly cast to \code{int} (Kirill + Müller in \ghpr{715}). + \item Unused arguments are no longer declared (Kirill Müller in + \ghpr{716}). + \item Visibility of exported functions is now supported via the R macro + \code{atttribute_visible} (Jeroen Ooms in \ghpr{720}). + \item The \code{no_init()} constructor accepts \code{R_xlen_t} (Kirill + Müller in \ghpr{730}). + \item Loop unrolling used \code{R_xlen_t} (Kirill Müller in \ghpr{731}). + \item Two unused-variables warnings are now avoided (Jeff Pollock in + \ghpr{732}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Execute tools::package_native_routine_registration_skeleton + within package rather than current working directory (JJ in \ghpr{697}). + \item The R portion no longer uses \code{dir.exists} to no require R 3.2.0 + or newer (Elias Pipping in \ghpr{698}). + \item Fix native registration for exports with name attribute (JJ in \ghpr{703} + addressing \ghit{702}). + \item Automatically register init functions for Rcpp Modules (JJ in \ghpr{705} + addressing \ghit{704}). + \item Add Shield around parameters in Rcpp::interfaces (JJ in \ghpr{713} + addressing \ghit{712}). + \item Replace dot (".") with underscore ("_") in package names when generating + native routine registrations (JJ in \ghpr{722} addressing \ghit{721}). + \item Generate C++ native routines with underscore ("_") prefix to avoid + exporting when standard exportPattern is used in NAMESPACE (JJ in + \ghpr{725} addressing \ghit{723}). + } + } +} + +\section{Changes in Rcpp version 0.12.11 (2017-05-20)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Rcpp::exceptions can now be constructed without a call stack (Jim + Hester in \ghpr{663} addressing \ghit{664}). + \item Somewhat spurious compiler messages under very verbose settings are + now suppressed (Kirill Müller in \ghpr{670}, \ghpr{671}, \ghpr{672}, + \ghpr{687}, \ghpr{688}, \ghpr{691}). + \item Refreshed the included \code{tinyformat} template library + (James Balamuta in \ghpr{674} addressing \ghit{673}). + \item Added \code{printf}-like syntax support for exception classes and + variadic templating for \code{Rcpp::stop} and \code{Rcpp::warning} + (James Balamuta in \ghpr{676}). + \item Exception messages have been rewritten to provide additional + information. (James Balamuta in \ghpr{676} and \ghpr{677} addressing + \ghit{184}). + \item One more instance of \code{Rf_mkString} is protected from garbage + collection (Dirk in \ghpr{686} addressing \ghit{685}). + \item Two exception specification that are no longer tolerated by + \code{g++-7.1} or later were removed (Dirk in \ghpr{690} addressing + \ghit{689}) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Added a Known Issues section to the Rcpp FAQ vignette + (James Balamuta in \ghpr{661} addressing \ghit{628}, \ghit{563}, + \ghit{552}, \ghit{460}, \ghit{419}, and \ghit{251}). + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Added sugar function \code{trimws} (Nathan Russell in \ghpr{680} + addressing \ghit{679}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Automatically generate native routine registrations (JJ in \ghpr{694}) + \item The plugins for C++11, C++14, C++17 now set the values R 3.4.0 or + later expects; a plugin for C++98 was added (Dirk in \ghpr{684} addressing + \ghit{683}). + } + \item Changes in Rcpp support functions: + \itemize{ + \item The \code{Rcpp.package.skeleton()} function now creates a package + registration file provided R 3.4.0 or later is used (Dirk in \ghpr{692}) + } + } +} + +\section{Changes in Rcpp version 0.12.10 (2017-03-17)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Added new size attribute aliases for number of rows and columns in + DataFrame (James Balamuta in \ghpr{638} addressing \ghit{630}). + \item Fixed single-character handling in \code{Rstreambuf} (Iñaki Ucar in + \ghpr{649} addressing \ghit{647}). + \item XPtr gains a parameter \code{finalizeOnExit} to enable running the + finalizer when R quits (Jeroen Ooms in \ghpr{656} addressing \ghit{655}). + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Fixed sugar functions \code{upper_tri()} and \code{lower_tri()} + (Nathan Russell in \ghpr{642} addressing \ghit{641}). + \item The \code{algorithm.h} file now accomodates the Intel compiler + (Dirk in \ghpr{643} and Dan in \ghpr{645} addressing issue \ghit{640}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item The C++17 standard is supported with a new plugin (used eg for + \code{g++-6.2}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item An overdue explanation of how C++11, C++14, and C++17 can be used + was added to the Rcpp FAQ. + } + } +} + +\section{Changes in Rcpp version 0.12.9 (2017-01-14)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The exception stack message is now correctly demangled on all + compiler versions (Jim Hester in \ghpr{598}) + \item Date and Datetime object and vector now have format methods and + \code{operator<<} support (\ghpr{599}). + \item The \code{size} operator in \code{Matrix} is explicitly referenced + avoiding a g++-6 issues (\ghpr{607} fixing \ghit{605}). + \item The underlying date calculation code was updated (\ghpr{621}, + \ghpr{623}). + \item Addressed improper diagonal fill for non-symmetric matrices + (James Balamuta in \ghpr{622} addressing \ghit{619}) + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Added new Sugar function \code{sample()} (Nathan Russell in + \ghpr{610} and \ghpr{616}). + \item Added new Sugar function \code{Arg()} (James Balamuta in + \ghpr{626} addressing \ghit{625}). + } + \item Changes in Rcpp unit tests + \itemize{ + \item Added Environment::find unit tests and an Environment::get(Symbol) + test (James Balamuta in \ghpr{595} addressing issue \ghit{594}). + \item Added diagonal matrix fill tests + (James Balamuta in \ghpr{622} addressing \ghit{619}) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item Exposed pointers macros were included in the Rcpp Extending vignette + (MathurinD; James Balamuta in \ghpr{592} addressing \ghit{418}). + \item The file \code{Rcpp.bib} move to directory \code{bib} which is + guaranteed to be present (\ghpr{631}). + } + \item Changes in Rcpp build system + \itemize{ + \item Travis CI now also calls \CRANpkg{covr} for coverage analysis (Jim + Hester in PR \ghpr{591}) + } + } +} + +\section{Changes in Rcpp version 0.12.8 (2016-11-16)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item String and vector elements now use extended \code{R_xlen_t} indices + (Qiang in PR \ghpr{560}) + \item Hashing functions now return unsigned int (Qiang in PR \ghpr{561}) + \item Added static methods \code{eye()}, \code{ones()}, and \code{zeros()} + for select matrix types (Nathan Russell in PR \ghpr{569}) + \item The exception call stack is again correctly reported; print methods + and tests added too (Jim Hester in PR \ghpr{582} fixing \ghit{579}) + \item Variatic macros no longer use a GNU extensions (Nathan in PR + \ghpr{575}) + \item Hash index functions were standardized on returning unsigned + integers (Also PR \ghpr{575}) + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Added new Sugar functions \code{rowSums()}, \code{colSums()}, + \code{rowMeans()}, \code{colMeans()} (PR \ghpr{551} by Nathan Russell + fixing \ghit{549}) + \item \code{Range} Sugar now used \code{R_xlen_t} type for start/end + (PR \ghpr{568} by Qiang Kou) + \item Defining \code{RCPP_NO_SUGAR} no longer breaks the build. + (PR \ghpr{585} by Daniel C. Dillon) + } + \item Changes in Rcpp unit tests + \itemize{ + \item A test for expression vectors was corrected. + \item The constructor test for datetime vectors reflects the new classes + which treats Inf correctly (and still as a non-finite value) + } + \item Changes in Rcpp Attributes + \itemize{ + \item An 'empty' return was corrected (PR \ghpr{589} fixing issue + \ghit{588}, and with thanks to Duncan Murdoch for the heads-up) + } + \item Updated Date and Datetime vector classes: + \itemize{ + \item The \code{DateVector} and \code{DatetimeVector} classes were renamed + with a prefix \code{old}; they are currently \code{typedef}'ed to the + existing name (\ghpr{557}) + \item New variants \code{newDateVector} and \code{newDatetimeVector} were + added based on \code{NumericVector} (also \ghpr{557}, \ghpr{577}, + \ghpr{581}, \ghpr{587}) + \item By defining \code{RCPP_NEW_DATE_DATETIME_VECTORS} the new classes + can activated. We intend to make the new classes the default no sooner + than twelve months from this release. + \item The \code{capabilities()} function can also be used for presence of + this feature + } + } +} + +\section{Changes in Rcpp version 0.12.7 (2016-09-04)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The \code{NORET} macro is now defined if it was not already defined + by R itself (Kevin fixing issue \ghit{512}). + \item Environment functions get() & find() now accept a Symbol + (James Balamuta in \ghpr{513} addressing issue \ghit{326}). + \item Several uses of \code{Rf_eval} were replaced by the preferred + \code{Rcpp::Rcpp_eval} (Qiang in PR \ghpr{523} closing \ghit{498}). + \item Improved Autogeneration Warning for RcppExports + (James Balamuta in \ghpr{528} addressing issue \ghit{526}). + \item Fixed invalid C++ prefix identifiers in auto-generated code + (James Balamuta in \ghpr{528} and \ghpr{531} addressing issue + \ghit{387}; Simon Dirmeier in \ghpr{548}). + \item String constructors now set default UTF-8 encoding (Qiang Kou in + \ghpr{529} fixing \ghit{263}). + \item Add variadic variants of the \code{RCPP_RETURN_VECTOR} and + \code{RCPP_RETURN_MATRIX} macro when C++11 compiler used (Artem Klevtsov + in \ghpr{537} fixing \ghit{38}). + } + \item Changes in Rcpp build system + \itemize{ + \item Travis CI is now driven via \code{run.sh} from our fork, and deploys + all packages as .deb binaries using our PPA where needed (Dirk in + \ghpr{540} addressing issue \ghit{517}). + } + \item Changes in Rcpp unit tests + \itemize{ + \item New unit tests for random number generators the R namespace which + call the standalone Rmath library. (James Balamuta in \ghpr{514} + addressing issue \ghit{28}). + } + \item Changes in Rcpp Examples: + \itemize{ + \item Examples that used cxxfunction() from the inline package have been + rewritten to use either sourceCpp() or cppFunction() + (James Balamuta in \ghpr{541}, \ghpr{535}, \ghpr{534}, and \ghpr{532} + addressing issue \ghit{56}). + } + } +} + +\section{Changes in Rcpp version 0.12.6 (2016-07-18)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The \code{long long} data type is used only if it is available, + to avoid compiler warnings (Kirill Müller in \ghpr{488}). + \item The compiler is made aware that \code{stop()} never returns, to + improve code path analysis (Kirill Müller in \ghpr{487} addressing issue + \ghit{486}). + \item String replacement was corrected (Qiang in \ghpr{479} following + mailing list bug report by Masaki Tsuda) + \item Allow for UTF-8 encoding in error messages via + \code{RCPP_USING_UTF8_ERROR_STRING} macro (Qin Wenfeng in \ghpr{493}) + \item The R function \code{Rf_warningcall} is now provided as well (as + usual without leading \code{Rf_}) (\ghpr{497} fixing \ghit{495}) + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Const-ness of \code{min} and \code{max} functions has been corrected. + (Dan Dillon in PR \ghpr{478} fixing issue \ghit{477}). + \item Ambiguities for matrix/vector and scalar operations have been fixed + (Dan Dillon in PR \ghpr{476} fixing issue \ghit{475}). + \item New \code{algorithm} header using iterator-based approach for + vectorized functions (Dan in PR \ghpr{481} revisiting PR \ghpr{428} and + addressing issue \ghit{426}, with futher work by Kirill in PR \ghpr{488} + and Nathan in \ghpr{503} fixing issue \ghit{502}). + \item The \code{na_omit()} function is now faster for vectors without + \code{NA} values (Artem Klevtsov in PR \ghpr{492}) + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Add \code{cacheDir} argument to \code{sourceCpp()} to enable caching of + shared libraries across R sessions (JJ in \ghpr{504}). + \item Code generation now deals correctly which packages containing a dot + in their name (Qiang in \ghpr{501} fixing \ghit{500}). + } + \item Changes in Rcpp Documentation: + \itemize{ + \item A section on default parameters was added to the Rcpp FAQ vignette + (James Balamuta in \ghpr{505} fixing \ghit{418}). + \item The Rcpp-attributes vignette is now mentioned more prominently in + question one of the Rcpp FAQ vignette. + \item The Rcpp Quick Reference vignette received a facelift with new + sections on Rcpp attributes and plugins begin added. (James Balamuta in + \ghpr{509} fixing \ghit{484}). + \item The bib file was updated with respect to the recent JSS publication + for RProtoBuf. + } + } +} + +\section{Changes in Rcpp version 0.12.5 (2016-05-14)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The checks for different C library implementations now also check for Musl + used by Alpine Linux (Sergio Marques in PR \ghpr{449}). + \item \code{Rcpp::Nullable} works better with Rcpp::String (Dan Dillon in + PR \ghpr{453}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item R 3.3.0 Windows with Rtools 3.3 is now supported (Qin Wenfeng in PR + \ghpr{451}). + \item Correct handling of dependent file paths on Windows (use winslash = "/"). + } + \item Changes in Rcpp Modules: + \itemize{ + \item An apparent race condition in Module loading seen with R 3.3.0 was + fixed (Ben Goodrich in \ghpr{461} fixing \ghit{458}). + \item The (older) \code{loadRcppModules()} is now deprecated in favour of + \code{loadModule()} introduced around R 2.15.1 and Rcpp 0.9.11 (PR \ghpr{470}). + } + \item Changes in Rcpp support functions: + \itemize{ + \item The \code{Rcpp.package.skeleton()} function was again updated in + order to create a \code{DESCRIPTION} file which passes \code{R CMD check} + without notes. warnings, or error under R-release and R-devel (PR \ghpr{471}). + \item A new function \code{compilerCheck} can test for minimal \code{g++} + versions (PR \ghpr{474}). + } + } +} + +\section{Changes in Rcpp version 0.12.4 (2016-03-22)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item New accessors \code{as()} and \code{clone()} were added to the + \code{Nullable} class (Dan in PR \ghpr{423} closing \ghit{421}) + \item The \code{Nullable<>::operator SEXP()} and + \code{Nullable<>::get()} now also work for \code{const} objects + (Kirill Müller in PR \ghpr{417}). + \item A subsetting error was fixed (Qiang via \ghpr{432} closing + \ghit{431}). + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Added new Sugar function \code{median()} (Nathan in PR \ghpr{425} + closing \ghit{424}) + \item Added new Sugar function \code{cbind()} (Nathan in PR \ghpr{447} + closing \ghit{407}) + } + \item Changes in Rcpp Attributes: + \itemize{ + \item A plugin for C++14 was added (Dan in PR \ghpr{427}) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item An entry was added to the Rcpp-FAQ vignette describing the required + packages for vignette building (\ghit{422}). + \item Use on OS X was further detailed (James Balamuta in \ghpr{433} with + further review by Bob Rudis). + \item An entry was added concerning the hard-code limit of arguments to + some constructor and function (cf \ghit{435}). + \item The Rcpp-FAQ vignette now contains a table of content. + \item Typos and indentation were corrected in the Rcpp Sugar vignette + (\ghpr{445} by Colin Gillespie). + } + } +} + +\section{Changes in Rcpp version 0.12.3 (2016-01-10)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Const iterators now \code{CharacterVector} now behave like regular + iterators (PR \ghpr{404} by Dan fixing \ghit{362}). + \item Math operators between matrix and scalars type have been added (PR + \ghpr{406} by Qiang fixing \ghit{365}). + \item A missing \code{std::hash} function interface for + \code{Rcpp::String} has been addded (PR \ghpr{408} by Qiang fixing + \ghit{84}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Avoid invalid function names when generating C++ interfaces (PR + \ghpr{403} by JJ fixing \ghit{402}). + \item Insert additional space around \code{&} in function interface (PR + \ghpr{400} by Kazuki Fukui fixing \ghit{278}). + } + \item Changes in Rcpp Modules: + \itemize{ + \item The copy constructor now initialized the base class (PR \ghpr{411} + by Joshua Pritikin fixing \ghit{410}) + } + \item Changes in Rcpp Repository: + \itemize{ + \item Added a file \code{Contributing.md} providing some points to + potential contributors (PR \ghpr{414} closing issue \ghit{413}) + } + } +} + +\section{Changes in Rcpp version 0.12.2 (2015-11-14)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Correct return type in product of matrix dimensions (PR \ghpr{374} + by Florian) + \item Before creating a single String object from a \code{SEXP}, ensure + that it is from a vector of length one (PR \ghpr{376} by Dirk, fixing + \ghit{375}). + \item No longer use \code{STRING_ELT} as a left-hand side, thanks to a + heads-up by Luke Tierney (PR \ghpr{378} by Dirk, fixing \ghit{377}). + \item Rcpp Module objects are now checked more carefully (PR \ghpr{381} + by Tianqi, fixing \ghit{380}) + \item An overflow in Matrix column indexing was corrected (PR \ghpr{390} + by Qiang, fixing a bug reported by Allessandro on the list) + \item \code{Nullable} types can now be assigned \code{R_NilValue} in + function signatures. (PR \ghpr{395} by Dan, fixing issue \ghit{394}) + \item \code{operator<<()} now always shows decimal points (PR \ghpr{396} + by Dan) + \item Matrix classes now have a \code{transpose()} function (PR \ghpr{397} + by Dirk fixing \ghit{383}) + \item \code{operator<<()} for complex types was added (PRs \ghpr{398} by + Qiang and \ghpr{399} by Dirk, fixing \ghit{187}) + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Enable export of C++ interface for functions that return void. + } + \item Changes in Rcpp Sugar: + \itemize{ + \item Added new Sugar function \code{cummin()}, \code{cummax()}, + \code{cumprod()} (PR \ghpr{389} by Nathan Russell fixing \ghit{388}) + \item Enabled sugar math operations for subsets; e.g. x[y] + x[z]. + (PR \ghpr{393} by Kevin and Qiang, implementing \ghit{392}) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{NEWS} file now links to GitHub issue tickets and pull + requests. + \item The \code{Rcpp.bib} file with bibliographic references was updated. + } + } +} + +\section{Changes in Rcpp version 0.12.1 (2015-09-10)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Correct use of WIN32 instead of _WIN32 to please Windows 10 + \item Add an assignment operator to \code{DimNameProxy} (PR \ghpr{339} by Florian) + \item Add vector and matrix accessors \code{.at()} with bounds checking + (PR \ghpr{342} by Florian) + \item Correct character vector conversion from single char (PR \ghpr{344} by + Florian fixing issue \ghit{343}) + \item Correct on use of \code{R_xlen_t} back to \code{size_t} (PR \ghpr{348} by + Romain) + \item Correct subsetting code to allow for single assignment (PR \ghpr{349} by + Florian) + \item Enable subset assignment on left and righ-hand side (PR \ghpr{353} by + Qiang, fixing issue \ghit{345}) + \item Refreshed to included \code{tinyformat} template library (PR \ghpr{357} by + Dirk, issue \ghit{356}) + \item Add \code{operator<<()} for vectors and matrices (PR \ghpr{361} by Dan + fixing issue \ghit{239}) + \item Make \code{String} and \code{String_Proxy} objects comparable (PR + \ghpr{366} and PR \ghpr{372} by Dan, fixing issue \ghit{191}) + \item Add a new class \code{Nullable} for objects which may be \code{NULL} + (PR \ghpr{368} by Dirk and Dan, fixing issue \ghit{363}) + \item Correct creation and access of large matrices (PR \ghpr{370} by Florian, + fixing issue \ghit{369}) + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Correctly reset directory in case of no-rebuilding but Windows code + (PR \ghpr{335} by Dirk) + } + \item Changes in Rcpp Modules: + \itemize{ + \item We no longer define multiple Modules objects named \code{World} in + the unit tests with was seen to have a bad effect with R 3.2.2 or later + (PR \ghpr{351} by Dirk fixing issue \ghit{350}). + \item Applied patch by Kurt Hornik which improves how Rcpp loads Modules + (PR \ghpr{353} by Dirk) + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{Rcpp.bib} file with bibliographic references was updated. + } + } +} + +\section{Changes in Rcpp version 0.12.0 (2015-07-24)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item \code{Rcpp_eval()} no longer uses \code{R_ToplevelExec} when evaluating + R expressions; this should resolve errors where calling handlers (e.g. + through \code{suppressMessages()}) were not properly respected. + \item All internal length variables have been changed from \code{R_len_t} + to \code{R_xlen_t} to support vectors longer than 2^31-1 elements (via + PR \ghpr{303} by Qiang Kou). + \item The sugar function \code{sapply} now supports lambda functions + (addressing \ghit{213} thanks to Matt Dziubinski) + \item The \code{var} sugar function now uses a more robust two-pass + method, supports complex numbers, with new unit tests added (via PR + \ghpr{320} by Matt Dziubinski) + \item \code{String} constructors now allow encodings (via PR \ghpr{310} + by Qiang Kou) + \item \code{String} objects are preserving the underlying \code{SEXP} + objects better, and are more careful about initializations (via PRs + \ghpr{322} and \ghpr{329} by Qiang Kou) + \item DataFrame constructors are now a little more careful (via PR + \ghpr{301} by Romain Francois) + \item For R 3.2.0 or newer, \code{Rf_installChar()} is used instead of + \code{Rf_install(CHAR())} (via PR \ghpr{332}). + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Use more robust method of ensuring unique paths for generated shared + libraries. + \item The \code{evalCpp} function now also supports the \code{plugins} + argument. + \item Correctly handle signature termination characters ('\{' or ';') contained + in quotes. + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{Rcpp-FAQ} vignette was once again updated with respect to + OS X issues and Fortran libraries needed for e.g. \CRANpkg{RcppArmadillo}. + \item The included \code{Rcpp.bib} bibtex file (which is also used by + other Rcpp* packages) was updated with respect to its CRAN references. + } + } +} + +\section{Changes in Rcpp version 0.11.6 (2015-05-01)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The unwinding of exceptions was refined to protect against inadvertent + memory leaks. + \item Header files now try even harder not to let macro definitions leak. + \item Matrices have a new default constructor for zero-by-zero dimension + matrices (via a pull request by Dmitrii Meleshko). + \item A new \code{empty()} string constructor was added (via another pull + request). + \item Better support for Vectors with a storage policy different from the + default, i.e. \code{NoProtectStorage}, was added. + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Rtools 3.3 is now supported. + } + } +} + +\section{Changes in Rcpp version 0.11.5 (2015-03-04)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item An error handler for tinyformat was defined to prevent the \code{assert()} + macro from spilling. + \item The \code{Rcpp::warning} function was added as a wrapper for \code{Rf_warning}. + \item The \code{XPtr} class was extended with new \code{checked_get} + and \code{release} functions as well as improved behavior (throw an + exception rather than crash) when a NULL external pointer is dereferenced. + \item R code is evaluated within an \code{R_toplevelExec} block to prevent + user interrupts from bypassing C++ destructors on the stack. + \item The \code{Rcpp::Environment} constructor can now use a supplied + parent environment. + \item The \code{Rcpp::Function} constructor can now use a supplied + environment or namespace. + \item The \code{attributes_hidden} macro from R is used to shield internal + functions; the \code{R_ext/Visibility.h} header is now included as well. + \item A \code{Rcpp::print} function was added as a wrapper around \code{Rf_PrintValue}. + } + \item Changes in Rcpp Attributes: + \itemize{ + \item The \code{pkg_types.h} file is now included in \code{RcppExports.cpp} + if it is present in either the \code{inst/include} or \code{src}. + \item \code{sourceCpp} was modified to allow includes of local files + (e.g. \code{#include "foo.hpp"}). Implementation files (*.cc; *.cpp) corresponding + to local includes are also automatically built if they exist. + \item The generated attributes code was simplified with respect to + \code{RNGScope} and now uses \code{RObject} and its destructor rather than \code{SEXP} + protect/unprotect. + \item Support addition of the \code{rng} parameter in \code{Rcpp::export} + to suppress the otherwise automatic inclusion of \code{RNGScope} in + generated code. + \item Attributes code was made more robust and can e.g. no longer recurse. + \item Version 3.2 of the Rtools is now correctly detected as well. + \item Allow 'R' to come immediately after '***' for defining embedded R + code chunks in sourceCpp. + \item The attributes vignette has been updated with documentation + on new features added over the past several releases. + } + \item Changes in Rcpp tests: + \itemize{ + \item On Travis CI, all build dependencies are installed as binary + \code{.deb} packages resulting in faster tests. + } + } +} + +\section{Changes in Rcpp version 0.11.4 (2015-01-20)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The \code{ListOf} class gains the \code{.attr} and + \code{.names} methods common to other Rcpp vectors. + \item The \code{[dpq]nbinom_mu()} scalar functions are now available via + the \code{R::} namespace when R 3.1.2 or newer is used. + \item Add an additional test for AIX before attempting to include \code{execinfo.h}. + \item \code{Rcpp::stop} now supports improved \code{printf}-like syntax + using the small tinyformat header-only library (following a similar + implementation in Rcpp11) + \item Pairlist objects are now protected via an additional \code{Shield<>} + as suggested by Martin Morgan on the rcpp-devel list. + \item Sorting is now prohibited at compile time for objects of type + \code{List}, \code{RawVector} and \code{ExpressionVector}. + \item Vectors now have a \code{Vector::const\_iterator} that is 'const correct' + thanks to fix by Romain following a bug report in rcpp-devel by Martyn Plummer. + \item The \code{mean()} sugar function now uses a more robust two-pass + method, and new unit tests for \code{mean()} were added at the same time. + \item The \code{mean()} and \code{var()} functions now support all core + vector types. + \item The \code{setequal()} sugar function has been corrected via + suggestion by Qiang Kou following a bug report by Søren Højsgaard. + \item The macros \code{major}, \code{minor}, and \code{makedev} no longer leak + in from the (Linux) system header \code{sys/sysmacros.h}. + \item The \code{push_front()} string function was corrected. + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Only look for plugins in the package's namespace + (rather than entire search path). + \item Also scan header files for definitions of functions to be considerd + by Attributes. + \item Correct the regular expression for source files which are scanned. + } + \item Changes in Rcpp unit tests + \itemize{ + \item Added a new binary test which will load a pre-built package to + ensure that the Application Binary Interface (ABI) did not change; this + test will (mostly or) only run at Travis where we have reasonable control + over the platform running the test and can provide a binary. + \item New unit tests for sugar functions \code{mean}, \code{setequal} and + \code{var} were added as noted above. + } + \item Changes in Rcpp Examples: + \itemize{ + \item For the (old) examples \code{ConvolveBenchmarks} and \code{OpenMP}, + the respective \code{Makefile} was renamed to \code{GNUmakefile} to please + \code{R CMD check} as well as the CRAN Maintainers. + } + } +} + +\section{Changes in Rcpp version 0.11.3 (2014-09-27)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The deprecation of \code{RCPP_FUNCTION_*} which was announced with + release 0.10.5 last year is proceeding as planned, and the file + \code{macros/preprocessor_generated.h} has been removed. + \item \code{Timer} no longer records time between steps, but times from + the origin. It also gains a \code{get_timers(int)} methods that + creates a vector of \code{Timer} that have the same origin. This is modelled + on the \code{Rcpp11} implementation and is more useful for situations where + we use timers in several threads. \code{Timer} also gains a constructor + taking a \code{nanotime_t} to use as its origin, and a \code{origin} method. + This can be useful for situations where the number of threads is not known + in advance but we still want to track what goes on in each thread. + \item A cast to \code{bool} was removed in the vector proxy code as + inconsistent behaviour between clang and g++ compilations was noticed. + \item A missing \code{update(SEXP)} method was added thanks to pull + request by Omar Andres Zapata Mesa. + \item A proxy for \code{DimNames} was added. + \item A \code{no_init} option was added for Matrices and Vectors. + \item The \code{InternalFunction} class was updated to work with + \code{std::function} (provided a suitable C++11 compiler is available) + via a pull request by Christian Authmann. + \item A \code{new_env()} function was added to \code{Environment.h} + \item The return value of range eraser for Vectors was fixed in a pull + request by Yixuan Qiu. + } + \item Changes in Rcpp Sugar: + \itemize{ + \item In \code{ifelse()}, the returned \code{NA} type was corrected for + \code{operator[]}. + } + \item Changes in Rcpp Attributes: + \itemize{ + \item Include LinkingTo in DESCRIPTION fields scanned to confirm that + C++ dependencies are referenced by package. + \item Add \code{dryRun} parameter to \code{sourceCpp}. + \item Corrected issue with relative path and R chunk use for \code{sourceCpp}. + } + \item Changes in Rcpp Documentation: + \itemize{ + \item The \code{Rcpp-FAQ} vignette was updated with respect to OS X issues. + \item A new entry in the \code{Rcpp-FAQ} clarifies the use of licenses. + \item Vignettes build results no longer copied to \code{/tmp} to please CRAN. + \item The Description in \code{DESCRIPTION} has been shortened. + } + \item Changes in Rcpp support functions: + \itemize{ + \item The \code{Rcpp.package.skeleton()} function will now use + \CRANpkg{pkgKitten} package, if available, to create a package which passes + \code{R CMD check} without warnings. A new \code{Suggests:} has been added + for \CRANpkg{pkgKitten}. + \item The \code{modules=TRUE} case for \code{Rcpp.package.skeleton()} has + been improved and now runs without complaints from \code{R CMD check} as well. + } + \item Changes in Rcpp unit test functions: + \itemize{ + \item Functions from the \CRANpkg{RUnit} package are now prefixed with \code{RUnit::} + \item The \code{testRcppModule} and \code{testRcppClass} sample packages + now pass \code{R CMD check --as-cran} cleanly with NOTES or WARNINGS + } + } +} + +\section{Changes in Rcpp version 0.11.2 (2014-06-06)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Implicit conversions, e.g. between \code{NumericVector} and + \code{IntegerVector}, will now give warnings if you use + \code{\#define RCPP_WARN_ON_COERCE} before including the Rcpp + headers. + \item Templated \code{List} containers, \code{ListOf}, have been + introduced. When subsetting such containers, the return is assumed + to be of type T, allowing code such as + \code{ListOf x; NumericVector y = x[0] + x[1] + x[2]}. + \item In a number of instances, returned results are protected and/or cast + more carefully. + } + \item Changes in Rcpp Attributes + \itemize{ + \item Trailing line comments are now stripped by the attributes + parser. This allows the parser to handle C++ source files + containing comments inline with function arguments. + \item The \code{USE_CXX1X} environment variable is now defined by + the cpp11 plugin when R >= 3.1. Two additional plugins have been + added for use with C++0x (eg when using g++ 4.6.* as on Windows) + as well as C++1y for compilers beginning to support the next + revision of the standard; additional fallback is provided for + Windows. + \item \code{compileAttributes()} now also considers Imports: which + may suppress a warning when running \code{Rcpp.package.skeleton()}. + } + } +} + +\section{Changes in Rcpp version 0.11.1 (2014-03-13)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Preserve backwards compatibility with \CRANpkg{Rcpp} 0.10.* by + allowing \code{RObject} extraction from vectors (or lists) of Rcpp + objects + \item Add missing default constructor to Reference class that was + omitted in the header-only rewrite + \item Fixes for \code{NA} and \code{NaN} handling of the + \code{IndexHash} class, as well as the vector \code{.sort()} + method. These fixes ensure that sugar functions depending on + \code{IndexHash} (i.e. \code{unique()}, \code{sort_unique()}, + \code{match()}) will now properly handle \code{NA} and \code{NaN} + values for numeric vectors. + \item \code{DataFrame::nrows} now more accurately mimics R's + internal behavior (checks the row.names attribute) + \item Numerous changes to permit compilation on the Solaris OS + \item Rcpp vectors gain a subsetting method -- it is now possible + to subset an Rcpp vector using \code{CharacterVector}s (subset + by name), \code{LogicalVector}s (logical subsetting), and + \code{IntegerVector}s (0-based index subsetting). Such subsetting + will also work with Rcpp sugar expressions, enabling expressions + such as \code{x[ x > 0]}. + \item Comma initialization (e.g. + \code{CharacterVector x = "a", "b", "c";}, has been disabled, as + it causes problems with the behavior of the \code{=} operator with + \code{Rcpp::List}s. Users who want to re-enable this functionality + can use \code{#define RCPP_COMMA_INITIALIZATION}, but be aware of + the above caveat. The more verbose + \code{CharacterVector x = CharacterVector::create("a", "b", "c")} + is preferred. + } + \item Changes in Rcpp Attributes + \itemize{ + \item Fix issue preventing packages with \code{Rcpp::interfaces} + attribute from compiling. + \item Fix behavior with attributes parsing of \code{::create} for default + arguments, and also allow constructors of a given size + (e.g. \code{NumericVector v = NumericVector(10))} gives a default + value of \code{numeric(10)} at the R level). Also make NAs preserve + type when exported to R (e.g. \code{NA_STRING} as a default argument + maps to \code{NA_character_} at the R level) + } + \item Changes in Rcpp modules + \itemize{ + \item Corrected the \code{un_pointer} implementation for \code{object} + } + } +} + +\section{Changes in Rcpp version 0.11.0 (2014-02-02)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Functions provided/used by \CRANpkg{Rcpp} are now registered + with R and instantiated by client package alleviating the new for + explicit linking against \code{libRcpp} which is therefore no + longer created. + \item Updated the \code{Rcpp.package.skeleton()} function accordingly. + \item New class \code{StretchyList} for pair lists with fast addition of + elements at the front and back. This abstracts the 3 functions + \code{NewList}, \code{GrowList} and \code{Insert} used in various + packages and in parsers in R. + \item The function \code{dnt}, \code{pnt}, \code{qnt} sugar + functions were incorrectly expanding to the no-degree-of-freedoms + variant. + \item Unit tests for \code{pnt} were added. + \item The sugar table function did not handle NAs and NaNs properly + for numeric vectors. Fixed and tests added. + \item The internal coercion mechanism mapping numerics to strings has + been updated to better match \R (specifically with \code{Inf}, \code{-Inf}, + and \code{NaN}.) + \item Applied two bug fixes to Vector \code{sort()} and \code{RObject} + definition spotted and corrected by Kevin Ushey + \item New \code{checkUserInterrupt()} function that provides a C++ friendly + implementation of \code{R_CheckUserInterrupt}. + } + \item Changes in Rcpp attributes: + \itemize{ + \item Embedded R code chunks in sourceCpp are now executed within + the working directory of the C++ source file. + \item Embedded R code chunks in sourceCpp can now be disabled. + } + \item Changes in Rcpp documentation: + \itemize{ + \item The Rcpp-FAQ and Rcpp-package vignettes have been updated and expanded. + \item Vignettes are now typeset with grey background for code boxes. + \item The bibtex reference file has been update to reflexct + current package versions. + } + \item Changes in Rcpp unit tests: + \itemize{ + \item The file \code{tests/doRUnit.R} was rewritten following the + pattern deployed in \CRANpkg{RProtoBuf} which is due to Murray Stokely + \item The function \code{test()} was rewritten; it provides an + easy entry point to running unit tests of the installed package + } + } +} + +\section{Changes in Rcpp version 0.10.6 (2013-10-27)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item The function \code{exposeClass} takes a description of the + constructors, fields and methods to be exposed from a C++ + class, and writes C++ and R files in the package. Inherited + classes can be dealt with, but require data type information. + This approach avoids hand-coding module files. + \item Two missing \code{is<>()} templates for + \code{CharacterVector} and \code{CharacterMatrix} have been added, + and some tests for \code{is_na()} and \code{is_finite()} have been + corrected thanks to Thomas Tse. + } + \item Changes in R code: + \itemize{ + \item Export linking helper function \code{LdFlags} as well as + \code{RcppLdFlags}. + \item Function \code{Rcpp.package.skeleton()} no longer passes a + \code{namespace} argument on to \code{package.skeleton()} + } + \item Changes in R setup: + \itemize{ + \item Raise requirement for R itself to be version 3.0.0 or later + as needed by the vignette processing + } + \item Changes in Rcpp attributes: + \itemize{ + \item \code{sourceCpp} now correctly binds to Rtools 3.0 and 3.1 + } + } +} + +\section{Changes in Rcpp version 0.10.5 (2013-09-28)}{ + \itemize{ + \item Changes in R code: + \itemize{ + \item New R function \code{demangle} that calls the \code{DEMANGLE} macro. + \item New R function \code{sizeof} to query the byte size of a type. This + returns an object of S3 class \code{bytes} that has a \code{print} method + showing bytes and bits. + } + \item Changes in Rcpp API: + \itemize{ + \item Add \code{defined(__sun)} to lists of operating systems to + test for when checking for lack of \code{backtrace()} needed for + stack traces. + \item \code{as}, \code{as}, \code{as} and + \code{as} are now supported, when + T is a class exposed by modules, i.e. with \code{RCPP_EXPOSED_CLASS} + \item \code{DoubleVector} as been added as an alias to + \code{NumericVector} + \item New template function \code{is} to identify if an R object + can be seen as a \code{T}. For example \code{is(x)}. + This is a building block for more expressive dispatch in various places + (modules and attributes functions). + \item \code{wrap} can now handle more types, i.e. types that iterate over + \code{std::pair} where KEY can be converted to a + \code{String} and \code{VALUE} is either a primitive type (int, double) + or a type that wraps. Examples : + \itemize{ + \item \code{std::map} : we can make a String from an int, + and double is primitive + \item \code{boost::unordered_map >}: we can make + a String from a double and \code{std::vector} can wrap itself + } + Other examples of this are included at the end of the \code{wrap} unit test + file (\code{runit.wrap.R} and \code{wrap.cpp}). + \item \code{wrap} now handles containers of classes handled by modules. e.g. + if you expose a class \code{Foo} via modules, then you can wrap + \code{vector}, ... An example is included in the \code{wrap} unit test + file + \item \code{RcppLdFlags()}, often used in \code{Makevars} files of + packages using \pkg{Rcpp}, is now exported from the package namespace. + } + \item Changes in Attributes: + \itemize{ + \item Objects exported by a module (i.e. by a \code{RCPP_MODULE} call + in a file that is processed by \code{sourceCpp}) are now directly + available in the environment. We used to make the module object + available, which was less useful. + \item A plugin for \code{openmp} has been added to support use of OpenMP. + \item \code{Rcpp::export} now takes advantage of the more flexible + \code{as<>}, handling constness and referenceness of the input types. + For users, it means that for the parameters of function exported by modules, + we can now use references, pointers and const versions of them. + The file \code{Module.cpp} file has an example. + \item{No longer call non-exported functions from the tools package} + \item{No longer search the inline package as a fallback when loading + plugins for the the \code{Rcpp::plugins} attribute}. + } + \item Changes in Modules: + \itemize{ + \item We can now expose functions and methods that take + \code{T&} or \code{const T&} as arguments. In these situations + objects are no longer copied as they used to be. + } + \item Changes in sugar: + \itemize{ + \item \code{is_na} supports classes \code{DatetimeVector} and + \code{DateVector} + } + \item Changes in Rcpp documentation: + \itemize{ + \item The vignettes have been moved from \code{inst/doc/} to the + \code{vignettes} directory which is now preferred. + \item The appearance of the vignettes has been refreshed by + switching to the Bistream Charter font, and microtype package. + } + \item Deprecation of \code{RCPP_FUNCTION_*}: + \itemize{ + \item The macros from the \code{preprocessor_generated.h} file + have been deprecated. They are still available, but they print a + message in addition to their expected behavior. + \item The macros will be permanently removed in the first \pkg{Rcpp} + release after July 2014. + \item Users of these macros should start replacing them with more + up-to-date code, such as using 'Rcpp attributes' or 'Rcpp modules'. + } + } +} + +\section{Changes in Rcpp version 0.10.4 (2013-06-23)}{ + \itemize{ + \item Changes in R code: None beyond those detailed for Rcpp Attributes + \item Changes in Rcpp attributes: + \itemize{ + \item Fixed problem whereby the interaction between the gc and the + RNGScope destructor could cause a crash. + \item Don't include package header file in generated C++ interface + header files. + \item Lookup plugins in \pkg{inline} package if they aren't found + within the \pkg{Rcpp} package. + \item Disallow compilation for files that don't have extensions + supported by R CMD SHLIB + } + \item Changes in Rcpp API: + \itemize{ + \item The \code{DataFrame::create} set of functions has been reworked + to just use \code{List::create} and feed to the \code{DataFrame} + constructor + \item The \code{operator-()} semantics for \code{Date} and + \code{Datetime} are now more inline with standard C++ behaviour; + with thanks to Robin Girard for the report. + \item RNGScope counter now uses unsigned long rather than int. + \item \code{Vector<*>::erase(iterator, iterator)} was fixed. Now + it does not remove the element pointed by last (similar to what is + done on stl types and what was intended initially). Reported on + Rcpp-devel by Toni Giorgino. + \item Added equality operator between elements of + \code{CharacterVector}s. + } + \item Changes in Rcpp sugar: + \itemize{ + \item New function \code{na_omit} based on the StackOverflow thread + \url{http://stackoverflow.com/questions/15953768/} + \item New function \code{is_finite} and \code{is_infinite} that + reproduces the behavior of R's \code{is.finite} and + \code{is.infinite} functions + } + \item Changes in Rcpp build tools: + \itemize{ + \item Fix by Martyn Plummer for Solaris in handling of + \code{SingleLogicalResult}. + \item The \code{src/Makevars} file can now optionally override the + path for \code{/usr/bin/install_name_tool} which is used on OS X. + \item Vignettes are trying harder not to be built in parallel. + } + \item Changes in Rcpp documentation: + \itemize{ + \item Updated the bibliography in \code{Rcpp.bib} (which is also + sourced by packages using Rcpp). + \item Updated the \code{THANKS} file. + } + \item Planned Deprecation of \code{RCPP_FUNCTION_*}: + \itemize{ + \item The set of macros \code{RCPP_FUNCTION_} etc ... from the + \code{preprocessor_generated.h} file will be deprecated in the next version + of \pkg{Rcpp}, i.e they will still be available but will generate some + warning in addition to their expected behavior. + \item In the first release that is at least 12 months after this announcement, the + macros will be removed from \pkg{Rcpp}. + \item Users of these macros (if there are any) should start replacing them + with more up to date code, such as using Rcpp attributes or Rcpp + modules. + } + } +} + +\section{Changes in Rcpp version 0.10.3 (2013-03-23)}{ + \itemize{ + \item Changes in R code: + \itemize{ + \item Prevent build failures on Windowsn when Rcpp is installed + in a library path with spaces (transform paths in the same manner + that R does before passing them to the build system). + } + \item Changes in Rcpp attributes: + \itemize{ + \item Rcpp modules can now be used with \code{sourceCpp} + \item Standalone roxygen chunks (e.g. to document a class) are now + transposed into RcppExports.R + \item Added \code{Rcpp::plugins} attribute for binding + directly to inline plugins. Plugins can be registered using + the new \code{registerPlugin} function. + \item Added built-in \code{cpp11} plugin for specifying + the use of C++11 in a translation unit + \item Merge existing values of build related environment + variables for sourceCpp + \item Add global package include file to RcppExports.cpp + if it exists + \item Stop with an error if the file name passed to + \code{sourceCpp} has spaces in it + \item Return invisibly from void functions + \item Ensure that line comments invalidate block comments when + parsing for attributes + \item Eliminated spurious empty hello world function definition + in Rcpp.package.skeleton + } + \item Changes in Rcpp API: + \itemize{ + \item The very central use of R API R_PreserveObject and + R_ReleaseObject has been replaced by a new system based on the + functions Rcpp_PreserveObject, Rcpp_ReleaseObject and Rcpp_ReplaceObject + which shows better performance and is implemented using a generic vector + treated as a stack instead of a pairlist in the R + implementation. However, as this preserve / release code is still + a little rough at the edges, a new #define is used (in config.h) + to disable it for now. + \item Platform-dependent code in Timer.cpp now recognises a few + more BSD variants thanks to contributed defined() test suggestions + \item Support for wide character strings has been added throughout the + API. In particular String, CharacterVector, wrap and as are aware of + wide character strings + } + } +} + +\section{Changes in Rcpp version 0.10.2 (2012-12-21)}{ + \itemize{ + \item Changes in Rcpp API: + \itemize{ + \item Source and header files were reorganized and consolidated so + that compile time are now significantly lower + \item Added additional check in \code{Rstreambuf} deletetion + \item Added support for \code{clang++} when using \code{libc++}, + and for anc \code{icpc} in \code{std=c++11} mode, thanks to a + patch by Yan Zhou + \item New class \code{Rcpp::String} to facilitate working with a single + element of a character vector + \item New utility class sugar::IndexHash inspired from Simon + Urbanek's fastmatch package + \item Implementation of the equality operator between two Rcomplex + \item \code{RNGScope} now has an internal counter that enables it + to be safely used multiple times in the same stack frame. + \item New class \code{Rcpp::Timer} for benchmarking + } + \item Changes in Rcpp sugar: + \itemize{ + \item More efficient version of \code{match} based on \code{IndexHash} + \item More efficient version of \code{unique} base on \code{IndexHash} + \item More efficient version of \code{in} base on \code{IndexHash} + \item More efficient version of \code{duplicated} base on \code{IndexHash} + \item More efficient version of \code{self_match} base on \code{IndexHash} + \item New function \code{collapse} that implements paste(., collapse= "" ) + } + \item Changes in Rcpp attributes: + \itemize{ + \item Use code generation rather than modules to implement + \code{sourceCpp} and \code{compileAttributes} (eliminates + problem with exceptions not being able to cross shared library + boundaries on Windows) + \item Exported functions now automatically establish an \code{RNGScope} + \item Functions exported by \code{sourceCpp} now directly + reference the external function pointer rather than rely on + dynlib lookup + \item On Windows, Rtools is automatically added to the PATH + during \code{sourceCpp} compilations + \item Diagnostics are printed to the console if \code{sourceCpp} + fails and C++ development tools are not installed + \item A warning is printed if when \code{compileAttributes} detects + \code{Rcpp::depends} attributes in source files that are not + matched by Depends/LinkingTo entries in the package DESCRIPTION + } + } +} + +\section{Changes in Rcpp version 0.10.1 (2012-11-26)}{ + \itemize{ + \item Changes in Rcpp sugar: + \itemize{ + \item New functions: \code{setdiff}, \code{union_}, \code{intersect} + \code{setequal}, \code{in}, \code{min}, \code{max}, \code{range}, + \code{match}, \code{table}, \code{duplicated} + \item New function: \code{clamp} which combines pmin and pmax, e.g. + clamp( a, x, b) is the same as pmax( b, pmin(x, a) ) + \item New function: \code{self_match} which implements something + similar to \code{match( x, unique( x ) )} + } + \item Changes in Rcpp API: + \itemize{ + \item The \code{Vector} template class (hence \code{NumericVector} + ...) get the \code{is_na} and the \code{get_na} static methods. + \item New helper class \code{no_init} that can be used to + create a vector without initializing its data, e.g. : + \code{ IntegerVector out = no_init(n) ; } + \item New exception constructor requiring only a message; \code{stop} + function to throw an exception + \item \code{DataFrame} gains a \code{nrows} method + } + \item Changes in Rcpp attributes: + \itemize{ + \item Ability to embed R code chunks (via specially formatted + block comments) in C++ source files. + \item Allow specification of argument defaults for exported functions. + \item New scheme for more flexible mixing of generated and user composed + C++ headers. + \item Print warning if no export attributes are found in source file. + \item Updated vignette with additional documentation on exposing + C++ interfaces from packages and signaling errors. + } + \item Changes in Rcpp modules: + \itemize{ + \item Enclose .External invocations in \code{BEGIN_RCPP}/\code{END_RCPP} + } + \item Changes in R code : + \itemize{ + \item New function \code{areMacrosDefined} + \item Additions to \code{Rcpp.package.skeleton}: + \itemize{ + \item \code{attributes} parameter to generate a version of + \code{rcpp_hello_world} that uses \code{Rcpp::export}. + \item \code{cpp_files} parameter to provide a list of C++ + files to include the in the \code{src} directory of the package. + } + } + \item Miscellaneous changes: + \itemize{ + \item New example 'pi simulation' using R and C++ via Rcpp attributes + } + } +} +\section{Changes in Rcpp version 0.10.0 (2012-11-13)}{ + \itemize{ + \item Support for C++11 style attributes (embedded in comments) to enable + use of C++ within interactive sessions and to automatically generate module + declarations for packages: + \itemize{ + \item Rcpp::export attribute to export a C++ function to R + \item \code{sourceCpp()} function to source exported functions from a file + \item \code{cppFunction()} and \code{evalCpp()} functions for inline declarations + and execution + \item \code{compileAttribtes()} function to generate Rcpp modules from + exported functions within a package + \item Rcpp::depends attribute for specifying additional build + dependencies for \code{sourceCpp()} + \item Rcpp::interfaces attribute to specify the external bindings + \code{compileAttributes()} should generate (defaults to R-only but a + C++ include file using R_GetCCallable can also be generated) + \item New vignette "Rcpp-attribute" + } + \item Rcpp modules feature set has been expanded: + \itemize{ + \item Functions and methods can now return objects from classes that + are exposed through modules. This uses the make_new_object template + internally. This feature requires that some class traits are declared + to indicate Rcpp's \code{wrap}/\code{as} system that these classes are covered + by modules. The macro RCPP_EXPOSED_CLASS and RCPP_EXPOSED_CLASS_NODECL + can be used to declared these type traits. + \item Classes exposed through modules can also be used as parameters + of exposed functions or methods. + \item Exposed classes can declare factories with ".factory". A factory + is a c++ function that returns a pointer to the target class. It is + assumed that these objects are allocated with new on the factory. On the + R side, factories are called just like other constructors, with the + "new" function. This feature allows an alternative way to construct + objects. + \item "converter" can be used to declare a way to convert an object + of a type to another type. This gets translated to the appropriate + "as" method on the R side. + \item Inheritance. A class can now declare that it inherits from + another class with the .derives( "Parent" ) notation. As a result + the exposed class gains methods and properties (fields) from its + parent class. + } + \item New sugar functions: + \itemize{ + \item \code{which_min} implements which.min. Traversing the sugar expression + and returning the index of the first time the minimum value is found. + \item \code{which_max} idem + \item \code{unique} uses unordered_set to find unique values. In particular, + the version for CharacterVector is found to be more efficient than + R's version + \item \code{sort_unique} calculates unique values and then sorts them. + } + \item Improvements to output facilities: + \itemize{ + \item Implemented \code{sync()} so that flushing output streams works + \item Added \code{Rcerr} output stream (forwarding to + \code{REprintf}) + } + \item Provide a namespace 'R' for the standalone Rmath library so + that Rcpp users can access those functions too; also added unit tests + \item Development releases sets variable RunAllRcppTests to yes to + run all tests (unless it was alredy set to 'no'); CRAN releases do + not and still require setting -- which helps with the desired CRAN + default of less testing at the CRAN server farm. + } +} + +\section{Changes in Rcpp version 0.9.15 (2012-10-13)}{ + \itemize{ + \item Untangling the clang++ build issue about the location of the + exceptions header by directly checking for the include file -- an + approach provided by Martin Morgan in a kindly contributed patch + as unit tests for them. + \item The \code{Date} and \code{Datetime} types now correctly + handle \code{NA}, \code{NaN} and \code{Inf} representation; the + \code{Date} type switched to an internal representation via \code{double} + \item Added \code{Date} and \code{Datetime} unit tests for the new + features + \item An additional \code{PROTECT} was added for parsing exception + messages before returning them to R, following a report by Ben North + } +} + +\section{Changes in Rcpp version 0.9.14 (2012-09-30)}{ + \itemize{ + \item Added new Rcpp sugar functions trunc(), round() and signif(), as well + as unit tests for them + \item Be more conservative about where we support clang++ and the inclusion + of exception_defines.h and prevent this from being attempted on OS X + where it failed for clang 3.1 + \item Corrected a typo in Module.h which now again permits use of finalizers + \item Small correction for (unexported) bib() function (which provides a path + to the bibtex file that ships with Rcpp) + \item Converted NEWS to NEWS.Rd + } +} +\section{Changes in Rcpp version 0.9.13 (2012-06-28)}{ + \itemize{ + \item Truly corrected Rcpp::Environment class by having default constructor + use the global environment, and removing the default argument of + global environment from the SEXP constructor + \item Added tests for clang++ version to include bits/exception_defines.h + for versions 3.0 or higher (similar to g++ 4.6.0 or later), needed to + include one particular exceptions header + \item Made more regression tests conditional on the RunAllRcppTests to come + closer to the CRAN mandate of running tests in sixty seconds + \item Updated unit test wrapper tests/doRUnit.R as well as unitTests/runTests.R + } +} +\section{Changes in Rcpp version 0.9.12 (2012-06-23)}{ + \itemize{ + \item Corrected Rcpp::Environment class by removing (empty) ctor following + rev3592 (on May 2) where default argument for ctor was moved + \item Unit testing now checks for environment variable RunAllRcppTests being + set to "yes"; otherwise some tests are skipped. This is arguably not + the right thing to do, but CRAN maintainers insist on faster tests. + \item Unit test wrapper script runTests.R has new option --allTests to set + the environment variable + \item The cleanup script now also considers inst/unitTests/testRcppClass/src + } +} +\section{Changes in Rcpp version 0.9.11 (2012-06-22)}{ + \itemize{ + \item New member function for vectors (and lists etc) containsElementNamed() + which returns a boolean indicating if the given element name is present + \item Updated the Rcpp.package.skeleton() support for Rcpp modules by + carrying functions already present from the corresponding unit test + which was also slightly expanded; and added more comments to the code + \item Rcpp modules can now be loaded via loadRcppModules() from .onLoad(), + or via loadModule("moduleName") from any R file + \item Extended functionality to let R modify C++ clases imported via modules + documented in help(setRcppClass) + \item Support compilation in Cygwin thanks to a patch by Dario Buttari + \item Extensions to the Rcpp-FAQ and the Rcpp-modules vignettes + \item The minium version of R is now 2.15.1 which is required for some of + the Rcpp modules support + } +} +\section{Changes in Rcpp version 0.9.10 (2012-02-16)}{ + \itemize{ + \item Rearrange headers so that Rcpp::Rcout can be used by RcppArmadillo et al + \item New Rcpp sugar function mapply (limited to two or three input vectors) + \item Added custom version of the Rcpp sugar diff function for numeric vectors + skipping unncesserry checks for NA + \item Some internal code changes to reflect changes and stricter requirements + in R CMD check in the current R-devel versions + \item Corrected fixed-value initialization for IntegerVector (with thanks to + Gregor Kastner for spotting this) + \item New Rcpp-FAQ entry on simple way to set compiler option for cxxfunction + } +} +\section{Changes in Rcpp version 0.9.9 (2012-12-25)}{ + \itemize{ + \item Reverting the 'int64' changes from release 0.9.8 which adversely + affect packages using Rcpp: We will re-apply the 'int64' changes in a + way which should cooperate more easily with 'long' and 'unsigned long'. + \item Unit test output directory fallback changed to use Rcpp.Rcheck + \item Conditioned two unit tests to not run on Windows where they now break + whereas they passed before, and continue to pass on other OSs + } +} +\section{Changes in Rcpp version 0.9.8 (2011-12-21)}{ + \itemize{ + \item wrap now handles 64 bit integers (int64_t, uint64_t) and containers + of them, and Rcpp now depends on the int64 package (also on CRAN). + This work has been sponsored by the Google Open Source Programs + Office. + \item Added setRcppClass() function to create extended reference classes + with an interface to a C++ class (typically via Rcpp Module) which + can have R-based fields and methods in addition to those from the C++. + \item Applied patch by Jelmer Ypma which adds an output stream class + 'Rcout' not unlike std::cout, but implemented via Rprintf to + cooperate with R and its output buffering. + \item New unit tests for pf(), pnf(), pchisq(), pnchisq() and pcauchy() + \item XPtr constructor now checks for corresponding type in SEXP + \item Updated vignettes for use with updated highlight package + \item Update linking command for older fastLm() example using external + Armadillo + } +} +\section{Changes in Rcpp version 0.9.7 (2011-09-29)}{ + \itemize{ + \item Applied two patches kindly provided by Martyn Plummer which provide + support for compilation on Solaris using the SunPro compiler + \item Minor code reorganisation in which exception specifiers are removed; + this effectively only implements a run-time (rather than compile-time) + check and is generally seen as a somewhat depreated C++ idiom. Thanks + to Darren Cook for alerting us to this issue. + \item New example 'OpenMPandInline.r' in the OpenMP/ directory, showing how + easily use OpenMP by modifying the RcppPlugin output + \item New example 'ifelseLooped.r' showing Rcpp can accelerate loops that may + be difficult to vectorise due to dependencies + \item New example directory examples/Misc/ regrouping the new example as + well as the fibonacci example added in Rcpp 0.9.6 + \item New Rcpp-FAQ example warning of lossy conversion from 64-bit long + integer types into a 53-bit mantissa which has no clear fix yet. + \item New unit test for accessing a non-exported function from a namespace + } +} +\section{Changes in Rcpp version 0.9.6 (2011-07-26)}{ + \itemize{ + \item Added helper traits to facilitate implementation of the RcppEigen + package: The is_eigen_base traits identifies if a class derives from + EigenBase using SFINAE; and new dispatch layer was added to wrap() to + help RcppEigen + \item XPtr now accepts a second template parameter, which is a function + taking a pointer to the target class. This allows the developper to + supply his/her own finalizer. The template parameter has a default + value which retains the original behaviour (calling delete on the + pointer) + \item New example RcppGibbs, extending Sanjog Misra's Rcpp illustration of + Darren Wilkinson's comparison of MCMC Gibbs Sampler implementations; + also added short timing on Normal and Gaussian RNG draws between Rcpp + and GSL as R's rgamma() is seen to significantly slower + \item New example on recursively computing a Fibonacci number using Rcpp and + comparing this to R and byte-compiled R for a significant speed gain + } +} +\section{Changes in Rcpp version 0.9.5 (2011-07-05)}{ + \itemize{ + \item New Rcpp-FAQ examples on using the plugin maker for inline's + cxxfunction(), and on setting row and column names for matrices + \item New sugar functions: mean, var, sd + \item Minor correction and extension to STL documentation in Rcpp-quickref + \item wrap() is now resilient to NULL pointers passed as in const char * + \item loadRcppModules() gains a "direct" argument to expose the module instead + of exposing what is inside it + \item Suppress a spurious warning from R CMD check on packages created with + Rcpp.package.skeleton(..., module=TRUE) + \item Some fixes and improvements for Rcpp sugar function 'rlnorm()' + \item Beginnings of new example using OpenMP and recognising user interrupts + } +} +\section{Changes in Rcpp version 0.9.4 (2011-04-12)}{ + \itemize{ + \item New R function "loadRcppModules" to load Rcpp modules automatically + from a package. This function must be called from the .onLoad function + and works with the "RcppModules" field of the package's DESCRIPTION file + \item The Modules example wrapped the STL std::vector received some editing + to disambiguate some symbols the newer compilers did not like + \item Coercing of vectors of factors is now done with an explicit callback + to R's "as.character()" as Rf_coerceVector no longer plays along + \item A CITATION file for the published JSS paper has been added, and + references were added to Rcpp-package.Rd and the different vignettes + } +} +\section{Changes in Rcpp version 0.9.3 (2011-04-05)}{ + \itemize{ + \item Fixed a bug in which modules code was not behaving when compiled + twice as can easily happen with inline'ed version + \item Exceptions code includes exception_defines.h only when g++ is 4.5 or + younger as the file no longer exists with g++-4.6 + \item The documentation Makefile now uses the $R_HOME environment variable + \item The documentation Makefile no longer calls clean in the all target + \item C++ conformance issue found by clang/llvm addressed by re-ordering + declarations in grow.h as unqualified names must be declared before + they are used, even when used within templates + \item The 'long long' typedef now depends on C++0x being enabled as this + was not a feature in C++98; this suppresses a new g++-4.5 warning + \item The Rcpp-introduction vignette was updated to the forthcoming JSS paper + } +} +\section{Changes in Rcpp version 0.9.2 (2011-02-23)}{ + \itemize{ + \item The unitTest runit.Module.client.package.R is now skipped on older OS + X releases as it triggers a bug with g++ 4.2.1 or older; OS X 10.6 is + fine but as it no longer support ppc we try to accomodate 10.5 too + Thanks to Simon Urbanek for pinning this down and Baptiste Auguie + and Ken Williams for additonal testing + \item RcppCommon.h now recognises the Intel Compiler thanks to a short + patch by Alexey Stukalov; this turns off Cxx0x and TR1 features too + \item Three more setup questions were added to the Rcpp-FAQ vignette + \item One question about RcppArmadillo was added to the Rcpp-FAQ vignette + } +} +\section{Changes in Rcpp version 0.9.1 (2011-02-14)}{ + \itemize{ + \item A number of internal changes to the memory allocation / protection of + temporary objects were made---with a heartfelt "Thank You!" to both + Doug Bates for very persistent debugging of Rcpp modules code, and to + Luke Tierney who added additional memory allocation debugging tools + to R-devel (which will be in R 2.13.0 and may also be in R 2.12.2) + \item Removed another GNU Make-specific variable from src/Makevars in order + to make the build more portable; this was noticed on FreeBSD + \item On *BSD, do not try to compute a stack trace but provide file and + line number (which is the same behaviour as implemented in Windows) + \item Fixed an int conversion bug reported by Daniel Sabanes Bove on r-devel, + added unit test as well + \item Added unit tests for complex-typed vectors (thanks to Christian Gunning) + \item Expanded the Rcpp-quickref vignette (with thanks to Christian Gunning) + \item Additional examples were added to the Rcpp-FAQ vignette + } +} +\section{Changes in Rcpp version 0.9.0 (2010-12-19)}{ + \itemize{ + \item The classic API was factored out into its own package RcppClassic which + is released concurrently with this version. + \item If an object is created but not initialized, attempting to use + it now gives a more sensible error message (by forwarding an + Rcpp::not_initialized exception to R). + \item SubMatrix fixed, and Matrix types now have a nested ::Sub typedef. + \item New unexported function SHLIB() to aid in creating a shared library on + the command-line or in Makefile (similar to CxxFlags() / LdFlags()). + \item Module gets a seven-argument ctor thanks to a patch from Tama Ma. + \item The (still incomplete) QuickRef vignette has grown thanks to a patch + by Christian Gunning. + \item Added a sprintf template intended for logging and error messages. + \item Date::getYear() corrected (where addition of 1900 was not called for); + corresponding change in constructor from three ints made as well. + \item Date() and Datetime() constructors from string received a missing + conversion to int and double following strptime. The default format + string for the Datetime() strptime call was also corrected. + \item A few minor fixes throughout, see ChangeLog. + } +} +\section{Changes in Rcpp version 0.8.9 (2010-11-27)}{ + \itemize{ + \item Many improvements were made in 'Rcpp modules': + - exposing multiple constructors + - overloaded methods + - self-documentation of classes, methods, constructors, fields and + functions. + - new R function "populate" to facilitate working with modules in + packages. + - formal argument specification of functions. + - updated support for Rcpp.package.skeleton. + - constructors can now take many more arguments. + \item The 'Rcpp-modules' vignette was updated as well and describe many + of the new features + \item New template class Rcpp::SubMatrix and support syntax in Matrix + to extract a submatrix: + NumericMatrix x = ... ; + // extract the first three columns + SubMatrix y = x( _ , Range(0,2) ) ; + // extract the first three rows + SubMatrix y = x( Range(0,2), _ ) ; + // extract the top 3x3 sub matrix + SubMatrix y = x( Range(0,2), Range(0,2) ) ; + \item Reference Classes no longer require a default constructor for + subclasses of C++ classes + \item Consistently revert to using backticks rather than shell expansion + to compute library file location when building packages against Rcpp + on the default platforms; this has been applied to internal test + packages as well as CRAN/BioC packages using Rcpp + } +} +\section{Changes in Rcpp version 0.8.8 (2010-11-01)}{ + \itemize{ + \item New syntactic shortcut to extract rows and columns of a Matrix. + x(i,_) extracts the i-th row and x(_,i) extracts the i-th column. + \item Matrix indexing is more efficient. However, faster indexing is + disabled if g++ 4.5.0 or later is used. + \item A few new Rcpp operators such as cumsum, operator=(sugar) + \item Variety of bug fixes: + - column indexing was incorrect in some cases + - compilation using clang/llvm (thanks to Karl Millar for the patch) + - instantation order of Module corrected + - POSIXct, POSIXt now correctly ordered for R 2.12.0 + } +} +\section{Changes in Rcpp version 0.8.7 (2010-10-15)}{ + \itemize{ + \item As of this version, Rcpp depends on R 2.12 or greater as it interfaces + the new reference classes (see below) and also reflects the POSIXt + class reordering both of which appeared with R version 2.12.0 + \item new Rcpp::Reference class, that allows internal manipulation of R + 2.12.0 reference classes. The class exposes a constructor that takes + the name of the target reference class and a field(string) method + that implements the proxy pattern to get/set reference fields using + callbacks to the R operators "$" and "$<-" in order to preserve the + R-level encapsulation + \item the R side of the preceding item allows methods to be written in R as + per ?ReferenceClasses, accessing fields by name and assigning them + using "<<-". Classes extracted from modules are R reference classes. + They can be subclassed in R, and/or R methods can be defined using + the $methods(...) mechanism. + \item internal performance improvements for Rcpp sugar as well as an added + 'noNA()' wrapper to omit tests for NA values -- see the included + examples in inst/examples/convolveBenchmarks for the speedups + \item more internal performance gains with Functions and Environments + } +} +\section{Changes in Rcpp version 0.8.6 (2010-09-09)}{ + \itemize{ + \item new macro RCPP_VERSION and Rcpp_Version to allow conditional compiling + based on the version of Rcpp + #if defined(RCPP_VERSION) && RCPP_VERSION >= Rcpp_Version(0,8,6) + #endif + \item new sugar functions for statistical distributions (d-p-q-r functions) + with distributions : unif, norm, gamma, chisq, lnorm, weibull, logis, + f, pois, binom, t, beta. + \item new ctor for Vector taking size and function pointer so that for example + NumericVector( 10, norm_rand ) + generates a N(0,1) vector of size 10 + \item added binary operators for complex numbers, as well as sugar support + \item more sugar math functions: sqrt, log, log10, exp, sin, cos, ... + \item started new vignette Rcpp-quickref : quick reference guide of Rcpp API + (still work in progress) + \item various patches to comply with solaris/suncc stricter standards + \item minor enhancements to ConvolutionBenchmark example + \item simplified src/Makefile to no longer require GNU make; packages using + Rcpp still do for the compile-time test of library locations + } +} +\section{Changes in Rcpp version 0.8.5 (2010-07-25)}{ + \itemize{ + \item speed improvements. Vector::names, RObject::slot have been improved + to take advantage of R API functions instead of callbacks to R + \item Some small updates to the Rd-based documentation which now points to + content in the vignettes. Also a small formatting change to suppress + a warning from the development version of R. + \item Minor changes to Date() code which may reenable SunStudio builds + } +} +\section{Changes in Rcpp version 0.8.4 (2010-07-09)}{ + \itemize{ + \item new sugar vector functions: rep, rep_len, rep_each, rev, head, tail, + diag + \item sugar has been extended to matrices: The Matrix class now extends the + Matrix_Base template that implements CRTP. Currently sugar functions + for matrices are: outer, col, row, lower_tri, upper_tri, diag + \item The unit tests have been reorganised into fewer files with one call + each to cxxfunction() (covering multiple tests) resulting in a + significant speedup + \item The Date class now uses the same mktime() replacement that R uses + (based on original code from the timezone library by Arthur Olson) + permitting wide date ranges on all operating systems + \item The FastLM example has been updated, a new benchmark based on the + historical Longley data set has been added + \item RcppStringVector now uses std::vector internally + \item setting the .Data slot of S4 objects did not work properly + } +} +\section{Changes in Rcpp version 0.8.3 (2010-06-27)}{ + \itemize{ + \item This release adds Rcpp sugar which brings (a subset of) the R syntax + into C++. This supports : + - binary operators : <,>,<=,>=,==,!= between R vectors + - arithmetic operators: +,-,*,/ between compatible R vectors + - several functions that are similar to the R function of the same name: + abs, all, any, ceiling, diff, exp, ifelse, is_na, lapply, pmin, pmax, + pow, sapply, seq_along, seq_len, sign + Simple examples : + // two numeric vector of the same size + NumericVector x ; + NumericVector y ; + NumericVector res = ifelse( x < y, x*x, -(y*y) ) ; + // sapply'ing a C++ function + double square( double x )\{ return x*x ; \} + NumericVector res = sapply( x, square ) ; + Rcpp sugar uses the technique of expression templates, pioneered by the + Blitz++ library and used in many libraries (Boost::uBlas, Armadillo). + Expression templates allow lazy evaluation of expressions, which + coupled with inlining generates very efficient code, very closely + approaching the performance of hand written loop code, and often + much more efficient than the equivalent (vectorized) R code. + Rcpp sugar is curently limited to vectors, future releases will + include support for matrices with sugar functions such as outer, etc ... + Rcpp sugar is documented in the Rcpp-sugar vignette, which contains + implementation details. + \item New helper function so that "Rcpp?something" brings up Rcpp help + \item Rcpp Modules can now expose public data members + \item New classes Date, Datetime, DateVector and DatetimeVector with proper + 'new' API integration such as as(), wrap(), iterators, ... + \item The so-called classic API headers have been moved to a subdirectory + classic/ This should not affect client-code as only Rcpp.h was ever + included. + \item RcppDate now has a constructor from SEXP as well + \item RcppDateVector and RcppDatetimeVector get constructors from int + and both const / non-const operator(int i) functions + \item New API class Rcpp::InternalFunction that can expose C++ functions + to R without modules. The function is exposed as an S4 object of + class C++Function + } +} +\section{Changes in Rcpp version 0.8.2 (2010-06-09)}{ + \itemize{ + \item Bug-fix release for suncc compiler with thanks to Brian Ripley for + additional testing. + } +} +\section{Changes in Rcpp version 0.8.1 (2010-06-08)}{ + \itemize{ + \item This release adds Rcpp modules. An Rcpp module is a collection of + internal (C++) functions and classes that are exposed to R. This + functionality has been inspired by Boost.Python. + Modules are created internally using the RCPP_MODULE macro and + retrieved in the R side with the Module function. This is a preview + release of the module functionality, which will keep improving until + the Rcpp 0.9.0 release. + The new vignette "Rcpp-modules" documents the current feature set of + Rcpp modules. + \item The new vignette "Rcpp-package" details the steps involved in making a + package that uses Rcpp. + \item The new vignette "Rcpp-FAQ" collects a number of frequently asked + questions and answers about Rcpp. + \item The new vignette "Rcpp-extending" documents how to extend Rcpp + with user defined types or types from third party libraries. Based on + our experience with RcppArmadillo + \item Rcpp.package.skeleton has been improved to generate a package using + an Rcpp module, controlled by the "module" argument + \item Evaluating a call inside an environment did not work properly + \item cppfunction has been withdrawn since the introduction of the more + flexible cxxfunction in the inline package (0.3.5). Rcpp no longer + depends on inline since many uses of Rcpp do not require inline at + all. We still use inline for unit tests but this is now handled + locally in the unit tests loader runTests.R. + Users of the now-withdrawn function cppfunction can redefine it as: + cppfunction <- function(...) cxxfunction( ..., plugin = "Rcpp" ) + \item Support for std::complex was incomplete and has been enhanced. + \item The methods XPtr::getTag and XPtr::getProtected are deprecated, + and will be removed in Rcpp 0.8.2. The methods tag() and prot() should + be used instead. tag() and prot() support both LHS and RHS use. + \item END_RCPP now returns the R Nil values; new macro VOID_END_RCPP + replicates prior behabiour + } +} +\section{Changes in Rcpp version 0.8.0 (2010-05-17)}{ + \itemize{ + \item All Rcpp headers have been moved to the inst/include directory, + allowing use of 'LinkingTo: Rcpp'. But the Makevars and Makevars.win + are still needed to link against the user library. + \item Automatic exception forwarding has been withdrawn because of + portability issues (as it did not work on the Windows platform). + Exception forwarding is still possible but is now based on explicit + code of the form: + try \{ + // user code + \} catch( std::exception& __ex__)\{ + forward_exception_to_r( __ex___ ) ; + Alternatively, the macro BEGIN_RCPP and END_RCPP can use used to enclose + code so that it captures exceptions and forward them to R. + BEGIN_RCPP + // user code + END_RCPP + \item new __experimental__ macros + The macros RCPP_FUNCTION_0, ..., RCPP_FUNCTION_65 to help creating C++ + functions hiding some code repetition: + RCPP_FUNCTION_2( int, foobar, int x, int y)\{ + return x + y ; + The first argument is the output type, the second argument is the + name of the function, and the other arguments are arguments of the + C++ function. Behind the scenes, the RCPP_FUNCTION_2 macro creates an + intermediate function compatible with the .Call interface and handles + exceptions + Similarly, the macros RCPP_FUNCTION_VOID_0, ..., RCPP_FUNCTION_VOID_65 + can be used when the C++ function to create returns void. The generated + R function will return R_NilValue in this case. + RCPP_FUNCTION_VOID_2( foobar, std::string foo )\{ + // do something with foo + The macro RCPP_XP_FIELD_GET generates a .Call compatible function that + can be used to access the value of a field of a class handled by an + external pointer. For example with a class like this: + class Foo\{ + public: + int bar ; + RCPP_XP_FIELD_GET( Foo_bar_get, Foo, bar ) ; + RCPP_XP_FIELD_GET will generate the .Call compatible function called + Foo_bar_get that can be used to retrieved the value of bar. + The macro RCPP_FIELD_SET generates a .Call compatible function that + can be used to set the value of a field. For example: + RCPP_XP_FIELD_SET( Foo_bar_set, Foo, bar ) ; + generates the .Call compatible function called "Foo_bar_set" that + can be used to set the value of bar + The macro RCPP_XP_FIELD generates both getter and setter. For example + RCPP_XP_FIELD( Foo_bar, Foo, bar ) + generates the .Call compatible Foo_bar_get and Foo_bar_set using the + macros RCPP_XP_FIELD_GET and RCPP_XP_FIELD_SET previously described + The macros RCPP_XP_METHOD_0, ..., RCPP_XP_METHOD_65 faciliate + calling a method of an object that is stored in an external pointer. For + example: + RCPP_XP_METHOD_0( foobar, std::vector , size ) + creates the .Call compatible function called foobar that calls the + size method of the std::vector class. This uses the Rcpp::XPtr< + std::vector > class. + The macros RCPP_XP_METHOD_CAST_0, ... is similar but the result of + the method called is first passed to another function before being + wrapped to a SEXP. For example, if one wanted the result as a double + RCPP_XP_METHOD_CAST_0( foobar, std::vector , size, double ) + The macros RCPP_XP_METHOD_VOID_0, ... are used when calling the + method is only used for its side effect. + RCPP_XP_METHOD_VOID_1( foobar, std::vector, push_back ) + Assuming xp is an external pointer to a std::vector, this could + be called like this : + .Call( "foobar", xp, 2L ) + \item Rcpp now depends on inline (>= 0.3.4) + \item A new R function "cppfunction" was added which invokes cfunction from + inline with focus on Rcpp usage (enforcing .Call, adding the Rcpp + namespace, set up exception forwarding). cppfunction uses BEGIN_RCPP + and END_RCPP macros to enclose the user code + \item new class Rcpp::Formula to help building formulae in C++ + \item new class Rcpp::DataFrame to help building data frames in C++ + \item Rcpp.package.skeleton gains an argument "example_code" and can now be + used with an empty list, so that only the skeleton is generated. It + has also been reworked to show how to use LinkingTo: Rcpp + \item wrap now supports containers of the following types: long, long double, + unsigned long, short and unsigned short which are silently converted + to the most acceptable R type. + \item Revert to not double-quote protecting the path on Windows as this + breaks backticks expansion used n Makevars.win etc + \item Exceptions classes have been moved out of Rcpp classes, + e.g. Rcpp::RObject::not_a_matrix is now Rcpp::not_a_matrix + } +} +\section{Changes in Rcpp version 0.7.12 (2010-04-16)}{ + \itemize{ + \item Undo shQuote() to protect Windows path names (which may contain + spaces) as backticks use is still broken; use of $(shell ...) works + } +} +\section{Changes in Rcpp version 0.7.11 (2010-03-26)}{ + \itemize{ + \item Vector<> gains a set of templated factory methods "create" which + takes up to 20 arguments and can create named or unnamed vectors. + This greatly facilitates creating objects that are returned to R. + \item Matrix now has a diag() method to create diagonal matrices, and + a new constructor using a single int to create square matrices + \item Vector now has a new fill() method to propagate a single value + \item Named is no more a class but a templated function. Both interfaces + Named(.,.) and Named(.)=. are preserved, and extended to work also on + simple vectors (through Vector<>::create) + \item Applied patch by Alistair Gee to make ColDatum more robust + \item Fixed a bug in Vector that caused random behavior due to the lack of + copy constructor in the Vector template + } +} +\section{Changes in Rcpp version 0.7.10 (2010-03-15)}{ + \itemize{ + \item new class Rcpp::S4 whose constructor checks if the object is an S4 + object + \item maximum number of templated arguments to the pairlist function, the + DottedPair constructor, the Language constructor and the Pairlist + constructor has been updated to 20 (was 5) and a script has been + added to the source tree should we want to change it again + \item use shQuote() to protect Windows path names (which may contain spaces) + } +} +\section{Changes in Rcpp version 0.7.9 (2010-03-12)}{ + \itemize{ + \item Another small improvement to Windows build flags + \item bugfix on 64 bit platforms. The traits classes (wrap_type_traits, etc) + used size_t when they needed to actually use unsigned int + \item fixed pre gcc 4.3 compatibility. The trait class that was used to + identify if a type is convertible to another had too many false + positives on pre gcc 4.3 (no tr1 or c++0x features). fixed by + implementing the section 2.7 of "Modern C++ Design" book. + } +} +\section{Changes in Rcpp version 0.7.8 (2010-03-09)}{ + \itemize{ + \item All vector classes are now generated from the same template class + Rcpp::Vector where RTYPE is one of LGLSXP, RAWSXP, STRSXP, + INTSXP, REALSXP, CPLXSXP, VECSXP and EXPRSXP. typedef are still + available : IntegerVector, ... All vector classes gain methods + inspired from the std::vector template : push_back, push_front, + erase, insert + \item New template class Rcpp::Matrix deriving from + Rcpp::Vector. These classes have the same functionality + as Vector but have a different set of constructors which checks + that the input SEXP is a matrix. Matrix<> however does/can not + guarantee that the object will allways be a matrix. typedef + are defined for convenience: Matrix is IntegerMatrix, etc... + \item New class Rcpp::Row that represents a row of a matrix + of the same type. Row contains a reference to the underlying + Vector and exposes a nested iterator type that allows use of + STL algorithms on each element of a matrix row. The Vector class + gains a row(int) method that returns a Row instance. Usage + examples are available in the runit.Row.R unit test file + \item New class Rcpp::Column that represents a column of a + matrix. (similar to Rcpp::Row). Usage examples are + available in the runit.Column.R unit test file + \item The Rcpp::as template function has been reworked to be more + generic. It now handles more STL containers, such as deque and + list, and the genericity can be used to implement as for more + types. The package RcppArmadillo has examples of this + \item new template class Rcpp::fixed_call that can be used in STL algorithms + such as std::generate. + \item RcppExample et al have been moved to a new package RcppExamples; + src/Makevars and src/Makevars.win simplified accordingly + \item New class Rcpp::StringTransformer and helper function + Rcpp::make_string_transformer that can be used to create a function + that transforms a string character by character. For example + Rcpp::make_string_transformer(tolower) transforms each character + using tolower. The RcppExamples package has an example of this. + \item Improved src/Makevars.win thanks to Brian Ripley + \item New examples for 'fast lm' using compiled code: + - using GNU GSL and a C interface + - using Armadillo (http://arma.sf.net) and a C++ interface + Armadillo is seen as faster for lack of extra copying + \item A new package RcppArmadillo (to be released shortly) now serves + as a concrete example on how to extend Rcpp to work with a modern + C++ library such as the heavily-templated Armadillo library + \item Added a new vignette 'Rcpp-introduction' based on a just-submitted + overview article on Rcpp + } +} +\section{Changes in Rcpp version 0.7.7 (2010-02-14)}{ + \itemize{ + \item new template classes Rcpp::unary_call and Rcpp::binary_call + that facilitates using R language calls together + with STL algorithms. + \item fixed a bug in Language constructors taking a string as their + first argument. The created call was wrong. + } +} +\section{Changes in Rcpp version 0.7.6 (2010-02-12)}{ + \itemize{ + \item SEXP_Vector (and ExpressionVector and GenericVector, a.k.a List) now + have methods push_front, push_back and insert that are templated + \item SEXP_Vector now has int- and range-valued erase() members + \item Environment class has a default constructor (for RInside) + \item SEXP_Vector_Base factored out of SEXP_Vector (Effect. C++ #44) + \item SEXP_Vector_Base::iterator added as well as begin() and end() + so that STL algorithms can be applied to Rcpp objects + \item CharacterVector gains a random access iterator, begin() and end() to + support STL algorithms; iterator dereferences to a StringProxy + \item Restore Windows build; successfully tested on 32 and 64 bit; + \item Small fixes to inst/skeleton files for bootstrapping a package + \item RObject::asFoo deprecated in favour of Rcpp::as + } +} +\section{Changes in Rcpp version 0.7.5 (2010-02-08)}{ + \itemize{ + \item wrap has been much improved. wrappable types now are : + - primitive types : int, double, Rbyte, Rcomplex, float, bool + - std::string + - STL containers which have iterators over wrappable types: + (e.g. std::vector, std::deque, std::list, etc ...). + - STL maps keyed by std::string, e.g std::map + - classes that have implicit conversion to SEXP + - classes for which the wrap template if fully or partly specialized + This allows composition, so for example this class is wrappable: + std::vector< std::map > (if T is wrappable) + \item The range based version of wrap is now exposed at the Rcpp:: + level with the following interface : + Rcpp::wrap( InputIterator first, InputIterator last ) + This is dispatched internally to the most appropriate implementation + using traits + \item a new namespace Rcpp::traits has been added to host the various + type traits used by wrap + \item The doxygen documentation now shows the examples + \item A new file inst/THANKS acknowledges the kind help we got from others + \item The RcppSexp has been removed from the library. + \item The methods RObject::asFoo are deprecated and will be removed + in the next version. The alternative is to use as. + \item The method RObject::slot can now be used to get or set the + associated slot. This is one more example of the proxy pattern + \item Rcpp::VectorBase gains a names() method that allows getting/setting + the names of a vector. This is yet another example of the + proxy pattern. + \item Rcpp::DottedPair gains templated operator<< and operator>> that + allow wrap and push_back or wrap and push_front of an object + \item Rcpp::DottedPair, Rcpp::Language, Rcpp::Pairlist are less + dependent on C++0x features. They gain constructors with up + to 5 templated arguments. 5 was choosed arbitrarily and might + be updated upon request. + \item function calls by the Rcpp::Function class is less dependent + on C++0x. It is now possible to call a function with up to + 5 templated arguments (candidate for implicit wrap) + \item added support for 64-bit Windows (thanks to Brian Ripley and Uwe Ligges) + } +} +\section{Changes in Rcpp version 0.7.4 (2010-01-30)}{ + \itemize{ + \item matrix-like indexing using operator() for all vector + types : IntegerVector, NumericVector, RawVector, CharacterVector + LogicalVector, GenericVector and ExpressionVector. + \item new class Rcpp::Dimension to support creation of vectors with + dimensions. All vector classes gain a constructor taking a + Dimension reference. + \item an intermediate template class "SimpleVector" has been added. All + simple vector classes are now generated from the SimpleVector + template : IntegerVector, NumericVector, RawVector, CharacterVector + LogicalVector. + \item an intermediate template class "SEXP_Vector" has been added to + generate GenericVector and ExpressionVector. + \item the clone template function was introduced to explicitely + clone an RObject by duplicating the SEXP it encapsulates. + \item even smarter wrap programming using traits and template + meta-programming using a private header to be include only + RcppCommon.h + \item the as template is now smarter. The template now attempts to + build an object of the requested template parameter T by using the + constructor for the type taking a SEXP. This allows third party code + to create a class Foo with a constructor Foo(SEXP) to have + as for free. + \item wrap becomes a template. For an object of type T, wrap uses + implicit conversion to SEXP to first convert the object to a SEXP + and then uses the wrap(SEXP) function. This allows third party + code creating a class Bar with an operator SEXP() to have + wrap for free. + \item all specializations of wrap : wrap, wrap< vector > + use coercion to deal with missing values (NA) appropriately. + \item configure has been withdrawn. C++0x features can now be activated + by setting the RCPP_CXX0X environment variable to "yes". + \item new template r_cast to facilitate conversion of one SEXP + type to another. This is mostly intended for internal use and + is used on all vector classes + \item Environment now takes advantage of the augmented smartness + of as and wrap templates. If as makes sense, one can + directly extract a Foo from the environment. If wrap makes + sense then one can insert a Bar directly into the environment. + Foo foo = env["x"] ; /* as is used */ + Bar bar ; + env["y"] = bar ; /* wrap is used */ + \item Environment::assign becomes a template and also uses wrap to + create a suitable SEXP + \item Many more unit tests for the new features; also added unit tests + for older API + } +} +\section{Changes in Rcpp version 0.7.3 (2010-01-21)}{ + \itemize{ + \item New R function Rcpp.package.skeleton, modelled after + utils::package.skeleton to help creating a package with support + for Rcpp use. + \item indexing is now faster for simple vectors due to inlining of + the operator[] and caching the array pointer + \item The class Rcpp::VectorBase was introduced. All vector classes + derive from it. The class handles behaviour that is common + to all vector types: length, names, etc ... + \item exception forwarding is extended to compilers other than GCC + but default values are used for the exception class + and the exception message, because we don't know how to do it. + \item Improved detection of C++0x capabilities + \item Rcpp::Pairlist gains a default constructor + \item Rcpp::Environment gains a new_child method to create a new + environment whose parent is this + \item Rcpp::Environment::Binding gains a templated implicit + conversion operator + \item Rcpp::ExpressionVector gains an eval method to evaluate itself + \item Rcpp::ExpressionVector gains a constructor taking a std::string + representing some R code to parse. + \item Rcpp::GenericVector::Proxy gains an assignment operator to deal + with Environment::Proxy objects + \item Rcpp::LdFlags() now defaults to static linking OS X, as it already + did on Windows; this default can be overridden. + } +} +\section{Changes in Rcpp version 0.7.2 (2010-01-12)}{ + \itemize{ + \item a new benchmark was added to the examples directory + around the classic convolution example from + Writing R extensions to compare C and C++ implementations + \item Rcpp::CharacterVector::StringProxy gains a += operator + \item Rcpp::Environment gains an operator[](string) to get/set + objects from the environment. operator[] returns an object + of class Rcpp::Environment::Binding which implements the proxy + pattern. Inspired from Item 30 of 'More Effective C++' + \item Rcpp::Pairlist and Rcpp::Language gain an operator[](int) + also using the proxy pattern + \item Rcpp::RObject.attr can now be used on the rhs or the lhs, to get + or set an attribute. This also uses the proxy pattern + \item Rcpp::Pairlist and Rcpp::Language gain new methods push_back + replace, length, size, remove, insert + \item wrap now returns an object of a suitable class, not just RObject + anymore. For example wrap( bool ) returns a LogicalVector + \item Rcpp::RObject gains methods to deal with S4 objects : isS4, + slot and hasSlot + \item new class Rcpp::ComplexVector to manage complex vectors (CPLXSXP) + \item new class Rcpp::Promise to manage promises (PROMSXP) + \item new class Rcpp::ExpressionVector to manage expression vectors + (EXPRSXP) + \item new class Rcpp::GenericVector to manage generic vectors, a.k.a + lists (VECSXP) + \item new class Rcpp::IntegerVector to manage integer vectors (INTSXP) + \item new class Rcpp::NumericVector to manage numeric vectors (REALSXP) + \item new class Rcpp::RawVector to manage raw vectors (RAWSXP) + \item new class Rcpp::CharacterVector to manage character vectors (STRSXP) + \item new class Rcpp::Function to manage functions + (CLOSXP, SPECIALSXP, BUILTINSXP) + \item new class Rcpp::Pairlist to manage pair lists (LISTSXP) + \item new class Rcpp::Language to manage calls (LANGSXP) + \item new specializations of wrap to deal with std::initializer lists + only available with GCC >= 4.4 + \item new R function Rcpp:::capabilities that can query if various + features are available : exception handling, variadic templates + initializer lists + \item new set of functions wrap(T) converting from T to RObject + \item new template function as that can be used to convert a SEXP + to type T. Many specializations implemented to deal with + C++ builtin and stl types. Factored out of RObject + \item new class Rcpp::Named to deal with named with named objects + in a pairlist, or a call + \item new class Rcpp::Symbol to manage symbols (SYMSXP) + \item The garbage collection has been improved and is now automatic + and hidden. The user needs not to worry about it at all. + \item Rcpp::Environment(SEXP) uses the as.environment R function + \item Doxygen-generated documentation is no longer included as it is both + too large and too volatile. Zipfiles are provided on the website. + } +} +\section{Changes in Rcpp version 0.7.1 (2010-01-02)}{ + \itemize{ + \item Romain is now a co-author of Rcpp + \item New base class Rcpp::RObject replace RcppSexp (which is provided for + backwards compatibility) + \item RObject has simple wrappers for object creation and conversion to SEXP + \item New classes Rcpp::Evaluator and Rcpp::Environment for expression + evaluation and environment access, respectively + \item New class Rcpp::XPtr for external pointers + \item Enhanced exception handling allows for trapping of exceptions outside + of try/catch blocks + \item Namespace support with a new namespace 'Rcpp' + \item Unit tests for most of the new classes, based on the RUnit package + \item Inline support now provided by the update inline package, so a new + Depends on 'inline (>= 0.3.4)' replaces the code in that was + temporarily in Rcpp + } +} +\section{Changes in Rcpp version 0.7.0 (2009-12-19)}{ + \itemize{ + \item Inline support via a modified version of 'cfunction' from Oleg + Sklyar's 'inline' package: simple C++ programs can now be compiled, + linked and loaded automagically from the R prompt, including support + for external packages. Also works on Windows (with R-tools installed) + \item New examples for the inline support based on 'Intro to HPC' tutorials + \item New type RcppSexp for simple int, double, std::string scalars and vectors + \item Every class is now in its own header and source file + \item Fix to RcppParams.Rd thanks to Frank S. Thomas + \item RcppVersion.R removed as redundant given DESCRIPTION and read.dcf() + \item Switched to R_PreserveObject and R_ReleaseObject for RcppSexp with + thanks to Romain + \item Licensing changed from LGPL 2.1 (or later) to GPL 2 (or later), file + COPYING updated + } +} +\section{Changes in Rcpp version 0.6.8 (2009-11-19)}{ + \itemize{ + \item Several classes now split off into their own header and source files + \item New header file RcppCommon.h regrouping common defines and includes + \item Makevars\{,.win\} updated to reflect src/ reorg + } +} +\section{Changes in Rcpp version 0.6.7 (2009-11-08)}{ + \itemize{ + \item New class RcppList for simple lists and data structures of different + types and dimensions, useful for RProtoBuf project on R-Forge + \item Started to split classes into their own header and source files + \item Added short README file about history and status + \item Small documentation markup fix thanks to Kurt; updated doxygen docs + \item New examples directory functionCallback/ for R function passed to C++ + and being called + } +} +\section{Changes in Rcpp version 0.6.6 (2009-08-03)}{ + \itemize{ + \item Updated Doxygen documentation + \item RcppParams class gains a new exists() member function + } +} +\section{Changes in Rcpp version 0.6.5 (2009-04-01)}{ + \itemize{ + \item Small OS X build correction using R_ARCH variable + \item Include LGPL license as file COPYING + } +} +\section{Changes in Rcpp version 0.6.4 (2009-03-01)}{ + \itemize{ + \item Use std:: namespace throughout instead of 'using namespace std' + \item Define R_NO_REMAP so that R provides Rf_length() etc in lieu of length() + to minimise clashes with other projects having similar functions + \item Include Doxygen documentation, and Doxygen configuration file + \item Minor Windows build fix (with thanks to Uwe and Simon) + } +} +\section{Changes in Rcpp version 0.6.3 (2009-01-09)}{ + \itemize{ + \item OS X build fix with thanks to Simon + \item Added 'view-only' classes for int and double vector and matrix clases + as well as string vector classses, kindly suggsted / provided by + David Reiss + \item Add two shorter helper functions Rcpp:::CxxFlags() and + Rcpp:::LdFlags() for compilation and linker flags + } +} +\section{Changes in Rcpp version 0.6.2 (2008-12-02)}{ + \itemize{ + \item Small but important fix for Linux builds in Rcpp:::RcppLdFlags() + } +} +\section{Changes in Rcpp version 0.6.1 (2008-11-30)}{ + \itemize{ + \item Now src/Makevars replaces src/Makefile, this brings proper OS X + multi-arch support with thanks to Simon + \item Old #ifdef statements related to QuantLib removed; Rcpp is now + decoupled from QuantLib headers yet be used by RQuantLib + \item Added RcppLdPath() to return the lib. directory patch and on Linux + the rpath settings + \item Added new RcppVectorExample() + \item Augmented documentation on usage in Rcpp-package.Rd + } +} +\section{Changes in Rcpp version 0.6.0 (2008-11-05)}{ + \itemize{ + \item New maintainer, taking over RcppTemplate (which has been without an + update since Nov 2006) under its initial name Rcpp + \item New files src/Makefile\{,.win\} including functionality from both + configure and RcppSrc/Makefile; we now build two libraries, one for + use by the package which also runs the example, and one for users to + link against, and removed src/Makevars.in + \item Files src/Rcpp.\{cpp,h\} moved in from ../RcppSrc + \item Added new class RcppDatetime corresponding to POSIXct in with full + support for microsecond time resolution between R and C++ + \item Several new manual pages added + \item Removed configure\{,.in,.win\} as src/Makefile* can handle this more + easily + \item Minor cleanup and reformatting for DESCRIPTION, Date: now uses + svn:keyword Date property + \item Renamed RcppTemplateVersion to RcppVersion, deleted RcppDemo + \item Directory demo/ removed as vignette("RcppAPI") is easier and more + reliable to show vignette documentation + \item RcppTemplateDemo() removed from R/zzz.R, vignette("RcppAPI") is easier; + man/RcppTemplateDemo.Rd removed as well + \item Some more code reindentation and formatting to R default arguments, + some renamed from RcppTemplate* to Rcpp* + \item Added footnote onto titlepage of inst/doc/RcppAPI.\{Rnw,pdf\} about how + this document has not (yet) been updated along with the channges made + } +} diff --git a/revdep/library/sprtt/new/Rcpp/R/Rcpp b/revdep/library/sprtt/new/Rcpp/R/Rcpp new file mode 100644 index 00000000..66861563 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/R/Rcpp @@ -0,0 +1,27 @@ +# File share/R/nspackloader.R +# Part of the R package, https://www.R-project.org +# +# Copyright (C) 1995-2012 The R Core Team +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# A copy of the GNU General Public License is available at +# https://www.r-project.org/Licenses/ + +local({ + info <- loadingNamespaceInfo() + pkg <- info$pkgname + ns <- .getNamespace(as.name(pkg)) + if (is.null(ns)) + stop("cannot find namespace environment for ", pkg, domain = NA); + dbbase <- file.path(info$libname, pkg, "R", pkg) + lazyLoad(dbbase, ns, filter = function(n) n != ".__NAMESPACE__.") +}) diff --git a/revdep/library/sprtt/new/Rcpp/R/Rcpp.rdb b/revdep/library/sprtt/new/Rcpp/R/Rcpp.rdb new file mode 100644 index 0000000000000000000000000000000000000000..82eb846faad8d503f5e3348c82423b85d710d216 GIT binary patch literal 296607 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

dH!lrzE9KG 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͗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

+a=)WTyo#pNSMykkc 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%0AbD7~@Q zj27Q)UCt>&V9;4(=d5C0P!bt8#-z9)BZStb(8||!$y{owxCQ1wCmI_pC6>%;N}QoP z_F80&s7axuSb3}oHrEqtL&0V95qiNgrsU+NgQPPvatW*rKwrr-QT)=AZ zHwZWDcw&9gFBJVKkX*zeR=H&%-(@BY*M52O3@ny>klf51DRqU1R3~~UyrYnHgBVX6{%G_P@1vt|zN{z~ zg7rDQrz3TlM}o>;!?cR7=r)ZJ+wpu7f*ztEoROl}#>mO<$;;ETI;?Sj$0GkL|n27XU_%h7|4ZF?I zRSmjV5IJ*rYK}g(6-jqIuee zbf1Tz9LAIw!+^sqMIkUDhZ@98#hy5~R8?A{6?HSaCMQ=+su{c%7L{kL&8t|$HtTtE zn+n&a?u`i~{HX7iQf08Ff`kw{pgE}Urabr#88zxHuy+{+BWuEql>8b4d!^7>Wvgnd zmo_eVX33<)f3x9=J|pKk$c@P7B3xtjh8IM)(ln7Zv*F}s5iWAcsw1h-8TODTx;AcH zu`!gDn?8VfIZGIJu@Gf=H6mN&SpiO171UK44vI1?ZL#e6MSvKVHs(Dupxe&*Xm2P*(nO)n$n>()Z_+dDs0QDyJmSM->O5c z@epRta5x=NHV!>ZIlLm(A+D#()3gt@(mnQhTKFBORsRK_Z}$-&{hFpNJ(GC#-6;MO zacs-qQ0^eke;+dGJ60RWqp+wx`zHFopE!LYj#qR~t=)|8%1h~9MH_k+>4v_mwQCRK z8}lw=dFLLVBra@VdbCg1WBBJ2Z(5Gx&%{^tz>#z>t6eGY$!}Kr`#bW~!^Ah7GeTj4-`1>kUK*-D||I`67x|;vKg`pW?4?OZ{|@7`x>X zUjG2J$8RLw-G+rkB8@+Gpoz7Q$4|kSP9+ZR zus%@QKZ+Da_Xe@UPs4w74-&7w8qYsZ+z5Tj?;`OAd1pxXcJaC!czyjNjI}2D8;f!; zf9!g^Zw>L1H{|w3+_IV1FSwQS@;lMqCf09b_m1(Cp62zfXL3%agP)5c?tKpa=pnt$ z$3ipRqr`jQ-x&Ejp4!gZ$IpI(^De~R>=^NVBkUeMzV4u=C3h*@hw^sf%kSd#dzw++ zK>Xqk##;Ye^q-D6vGfpf#wOw|CR;y=gV&>^-zBO}kn2UcSIX`~xtsd$fwoz6Z?COB zP7BtvyjP0JIFS0z3-ckqTUV|;E!rsqTEVfRwvA(wV>`zVjwz0v98c$X2Ghu2+r~Av zagA*ijk(4)uCa}4Y~vc+xW+cFv5jlw?@4lvNv<);H6|;b +using namespace Rcpp; + +// [[Rcpp::export]] +int fibonacci(const int x) { + if (x < 2) + return x; + else + return (fibonacci(x - 1)) + fibonacci(x - 2); +} + +The export attribute indicates that we'd like the function to be callable +from R. We can now "source" this C++ file at the R prompt and then call +the function as follows: + +R> sourceCpp("fibonacci.cpp") +R> fibonacci(20) +[1] 6765 + +Rcpp attributes build upon Rcpp modules (described in another vignette in the +package), as well as the automatic type converters Rcpp::as<>() and Rcpp::wrap. +The converters can already be used for a wide variety of standard C and C++ +types, and can also be adapted to other C++ types and libraries as described +in the Rcpp-extending vignette. + +Rcpp attributes and their supporting functions include: + + - Rcpp::export attribute to export a C++ function to R + - sourceCpp function to source exported functions from a file + - cppFunction and evalCpp functions for inline declarations and execution + - Rcpp::depends attribute for specifying additional build dependencies + for sourceCpp + +Attributes can also be used for package development via the `compileAttributes` +function, which generates an Rcpp module for all exported functions within +an R package. + +More details are provided in the new vignette Rcpp-attributes. We also intend +to provide further illustrations via our blogs following the release. + + + +===== Rcpp modules ===== + +Rcpp modules provide an easy way to expose C++ functions and classes to R using +a declarative syntax. We declare which functions and which classes we want to +make available to R and modules takes care of automatically (via the compiler, +through template deduction ...) creating the interface code between the C++ +code and R. + +Rcpp modules have been extended for the new release. A brief +summary of new key features is: + + - inheritance: A class can now declare that it inherits from another class; + the exposed class gains methods and properties (fields) from its parent class. + - Functions and methods can now return objects from classes that are exposed + through modules. The macro RCPP_EXPOSED_CLASS and RCPP_EXPOSED_CLASS_NODECL + can be used to declared the required type traits. + - Classes exposed through modules can also be used as parameters of exposed + functions or methods. + - Exposed classes can declare factories, i.e. a C++ function returning a + pointer to the target class, providing an alternative way to construct + objects. + - "converter" can be used to declare a way to convert ("cast") an object of + a type to another type. This is translated at the R level in terms of an "as" + method. + +We intend to provide example packages using these new features in the near future. + + + +===== New sugar functions ===== + +Rcpp sugar provides "syntactic sugar" familiar to R programmers at the C++ +level, including a large number of vectorised functions. In this release, we +added + - which_min() and which_max() returning the index of the first object + matching the condition + - unique() and sort_unique() + + + +===== New I/O facilities ===== + +The Rcpp::Rcout object now supports the std::flush manipulator, which calls +R_FlushConsole. A new object Rcpp::Rcerr has been added with passes content +for error messages to REprintf(). + + + +===== New namespace "R::" for Rmath functions ===== + +A side-effect of Rcpp sugar providing vectorised d/p/q/r functions for the +various statistical distribution was that the scalar variants of these +functions (available from Rmath.h) were masked behind a Rf_ prefix. +Previously, one had to call ::Rf_pnorm5() to compute pnorm() -- but now a +cleaner interface R::pnorm() is available. Unit tests were added as well. + + + +===== Links ===== + +Rcpp main page: + http://dirk.eddelbuettel.com/code/rcpp.html + +R-forge project page: + http://r-forge.r-project.org/projects/rcpp/ + +Dirk's blog section about Rcpp + Rcpp: http://dirk.eddelbuettel.com/blog/code/rcpp/ + +Romain's blog section about Rcpp: + http://romainfrancois.blog.free.fr/index.php?category/R-package/Rcpp + +RStudio blog: + http://blog.rstudio.org + +Google+: + https://plus.google.com/b/107029540907667241299/107029540907667241299/posts + +Facebook: + http://www.facebook.com/pages/Rcpp/213047595425775 + +Twitter: + https://twitter.com/eddelbuettel + https://twitter.com/romain_francois + + + +===== Support ===== + +Questions about Rcpp should be directed to the Rcpp-devel mailing list + https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel + +While we prefer the mailing list, StackOverflow has also become a frequently +used resource under the [rcpp] tag: + http://stackoverflow.com/questions/tagged/rcpp + + +Dirk Eddelbuettel, Romain Francois, Doug Bates, John Chambers and JJ Allaire +November 2012 + + + diff --git a/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.11.0.txt b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.11.0.txt new file mode 100644 index 00000000..3b0a35e5 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.11.0.txt @@ -0,0 +1,136 @@ + + +===== Summary ===== + +Version 0.11.0 of the Rcpp package is now on CRAN and its mirrors. + +This new release brings a number of new features, most noticably a simplified +build system, as well as improvements to existing features and bugfixes. + +Complete details of the changes implemented between the last announcement for +version 0.10.0 and this new can be found in the NEWS and ChangeLog files +which are included in the package. + + + +===== Overview ===== + +Rcpp is an R package and associated C++ library for seamless integration +between C++ and R. + +It has been described in a Journal of Statistical Software (2011, Vol 40, +Issue 08) paper (also included in the package as the "Rcpp-introduction" pdf +vignette) and a book "Seamless R and C++ Integration with Rcpp" (2013, +Springer, useR! Series). + +As of early 2014, Rcpp is used by over 160 other CRAN packages. + +Several key features of the new 0.11.0 release are described below. + + + +===== One-time rebuild required ===== + +Because of the simplified linking scheme detailed in the next section, and +the corresponding removal of the libRcpp.* library, all packages currently +using Rcpp need to be reinstalled. + +We provide a simple helper script at +https://github.com/RcppCore/rcpp-logs/blob/master/scripts/showReverseRcppDepends.r +to identidy which of your currently-installed packages use Rcpp, and need to +be rebuilt / reinstalled. + + + +===== Simpler Building with Rcpp ===== + +Thanks to the 'LinkingTo:' directive, R already instructed the compiler where +to fine header files when writing code with Rcpp. The package now uses the +registration facilities in R (see Section 5.4 in Writing R Extensions). + +With just an 'Imports: Rcpp' in DESCRIPTION along with an explicit import +statement in the NAMESPACE file such 'importFrom(Rcpp, evalCpp)' all required +Rcpp code will be properly instantiated without any explicit linking. [ Note +that just using 'import(Rcpp)' is not sufficient, but any exported C++ +identifier should do -- evalCpp is nice and short. ] + +This means that the package no longer provides a user-facing library +libRcpp.so (or libRcpp.dylib or libRcpp.dll). This also implies that a +one-time rebuild is needed as alluded to in the previous section. + +The key benefit is that many package should no longer require the files +src/Makevars and src/Makevars.win in order to link with Rcpp. Mny packages +will be able to retire these files. The exception, of course, is the case +where a package links against an external library as eg the RcppArmadillo +package> Here, the LAPACK / BLAS / Fortran libraries still need to be +linked. However, the corresponding values are also provided by R and the +expression becomes a simple 'PKG_LIBS=$(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)'. + + + +===== Rcpp attributes ===== + +Rcpp attributes were a key innovation in the 0.10.0; they have matured +further and have now become the standard way to build code with Rcpp. See +the dedicated vignette for details. + + + +==== C++11 Support ===== + +R 3.1.0, to be released in a few month, will permit compilation using C++11, +the newest C++ standard -- including for packages going to CRAN. Rcpp had +already supported 'local' builds using C++11 since version 0.10.3, simply add + + [[Rcpp::plugins(cpp11)]] + +and Rcpp attributes takes care of the rest. + + + +===== Memory management ===== + +A number of internal data structures have been rewritten. + + + +===== Links ===== + +Rcpp site: + http://www.rcpp.org + +Rcpp Gallery: + http://gallery.rcpp.org + +Dirk's Rcpp page: + http://dirk.eddelbuettel.com/code/rcpp.html + +GitHub page: + https://github.com/RcppCore/Rcpp + +R-forge project page: + http://r-forge.r-project.org/projects/rcpp/ + +Google+: + https://plus.google.com/b/107029540907667241299/107029540907667241299/posts + + + +===== Support ===== + +Questions about Rcpp should be directed to the Rcpp-devel mailing list + https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel + +While we prefer the mailing list, StackOverflow has also become a frequently +used resource under the [rcpp] tag: + http://stackoverflow.com/questions/tagged/rcpp + + + +On behalf of the Rcpp Core team, + + Dirk Eddelbuettel + February 2014 + + + diff --git a/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.6.0.txt b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.6.0.txt new file mode 100644 index 00000000..b7411588 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.6.0.txt @@ -0,0 +1,54 @@ +New Rcpp versions 0.6.0 and 0.6.1 +--------------------------------- + +The Rcpp package provides C++ classes that greatly facilitate interfacing C +or C++ code in R packages using the .Call() interface provided by R. + +Rcpp provides matching C++ classes for a large number of basic R data +types. Hence, a package author can keep his data in normal R data structure +without having to worry about translation or transfer to C++. At the same +time, the data structures can be accessed as easily at the C++ level, and +used in the normal manner. + +The mapping of data types works in both directions. It is as straightforward +to pass data from R to C++, as it is it return data from C++ to R. The +following two sections list supported data types. + +Transfer from R to C++: +Standard R datatypes that are understood in C++ are + o named lists containing numeric (i.e. floating point), integer, + character, logical (i.e. boolean) or Date and Datetime (i.e. POSIXct at + the microsecond granularity) arguments; + o data frames containing numeric, integer, logical, character, + Date, Datetime or Factor columns; + o named vectors containing numeric or integer values, + o vectors and matrices of different values + o character strings + +Transfer from C++ to R: +Standard C++ datatypes can be returned to R in a named list, the most +general data type in R. Permissible components of the returns list +are the following C++ types: + o double (scalar as well as vectors and vectors of vectors), + o int (scalar as well as vectors and vectors of vectors), string, + o STL vector types and vector types of int and double + o STL vector of strings + o internal Rcpp types RcppDate, RcppDateVector, RcppDatetime, + RcppDatetimeVector, RcppStringVector, RcppVector of int or double, + RcppMatrix of int or double, RcppFrame + +Rcpp was initially written by Dominick Samperi as part of his contributions +to RQuantLib, and later released as a standalone package (under both the Rcpp +and RcppTemplate names). Its development had ceased in late 2006. + +As of November 2008, I have made new release with substantially expanded +documentation, simpler yet more comprehensive build structure leading to +easier use of Rcpp from other packages, and support for Windows, Linux and +Mac OS X (with special thanks to Simon for some extended cluebat waving). + +More information for Rcpp can be found at + o the package homepage at http://dirk.eddelbuettel.com/code/rcpp.html + o the R-forge repository at https://r-forge.r-project.org/projects/rcpp/ + o the CRAN page at http://cran.r-project.org/web/packages/Rcpp/index.html + +Regards, Dirk diff --git a/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.7.0.txt b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.7.0.txt new file mode 100644 index 00000000..9b19b7e9 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.7.0.txt @@ -0,0 +1,74 @@ +Rcpp version 0.7.0 went onto CRAN this weekend. The key new features are + + o inline support, taken from Oleg Sklyar's neat inline package and + adapted/extented to support Rcpp as well as external libraries + (see below for an example); this even works on Windows (provided you + have Rtools installed and configured); + + o addition of a new simple type RcppSexp for importing or exporting + simple types directly between R and C++ + + o addition of a number of new examples for both these features + + o code reorganisation: every class has in its own header and source file + + o last but not least relicensed from LGPL (>=2.1) to GPL (>= 2) + +My blog (http://dirk.eddelbuettel.com/blog/) has two recent posts with a bit +more details (and colour highlighting of the code below) but let's just look +at one example of using GNU GSL functions for illustrative purposes (as you +wouldn't need this to access random-number generators as R has its own). + +Consider this R code snippet: + + ## use Rcpp to pass down a parameter for the seed, and a vector size + gslrng <- ' + int seed = RcppSexp(s).asInt(); + int len = RcppSexp(n).asInt(); + + gsl_rng *r; + gsl_rng_env_setup(); + std::vector v(len); + + r = gsl_rng_alloc (gsl_rng_default); + + gsl_rng_set (r, (unsigned long) seed); + for (int i=0; i + v which is also converted on the fly. + + 5) The resulting vector is returned and simply printed at the R level. + + +More examples are in the source tarball and in the R-Forge SVN archive. + diff --git a/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.8.0.txt b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.8.0.txt new file mode 100644 index 00000000..467af3c8 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.8.0.txt @@ -0,0 +1,297 @@ + +===== Summary ===== + +Version 0.8.0 of the Rcpp package was released to CRAN today. This release +marks another milestone in the ongoing redesign of the package, and +underlying C++ library. + + +===== Overview ===== + +Rcpp is an R package and C++ library that facilitates integration of C++ +code in R packages. + +The package features a set of C++ classes (Rcpp::IntegerVector, +Rcpp::Function, Rcpp::Environment, ...) that makes it easier to manipulate R +objects of matching types (integer vectors, functions, environments, etc +...). + +Rcpp takes advantage of C++ language features such as the explicit +constructor/destructor lifecycle of objects to manage garbage collection +automatically and transparently. We believe this is a major improvement over +PROTECT/UNPROTECT. When an Rcpp object is created, it protects the underlying +SEXP so that the garbage collector does not attempt to reclaim the +memory. This protection is withdrawn when the object goes out of +scope. Moreover, users generally do not need to manage memory directly (via +calls to new / delete or malloc / free) as this is done by the Rcpp classes +or the corresponding STL containers. + + +===== API ===== + +Rcpp provides two APIs: an older set of classes we refer to the classic API +(see below for the section 'Backwards Compatibility) as well as second and +newer set of classes. + +Classes of the new Rcpp API belong to the Rcpp namespace. Each class is +associated to a given SEXP type and exposes an interface that allows +manipulation of the object that may feel more natural than the usual use of +macros and functions provided by the R API. + +---------------------------------------------------------- +SEXP type | Rcpp class +---------------------------------------------------------- +INTSXP | Rcpp::IntegerVector +REALSXP | Rcpp::NumericVector +RAWSXP | Rcpp::RawVector +LGLSXP | Rcpp::LogicalVector +CPLXSXP | Rcpp::ComplexVector +STRSXP | Rcpp::CharacterVector +VECSXP | Rcpp::List +EXPRSXP | Rcpp::ExpressionVector +---------------------------------------------------------- +ENVSXP | Rcpp::Environment +SYMSXP | Rcpp::Symbol +---------------------------------------------------------- +CLOSXP | +BUILTINSXP | Rcpp::Function +SPECIALSXP | +---------------------------------------------------------- +LANGSXP | Rcpp::Language +LISTSXP | Rcpp::Pairlist +---------------------------------------------------------- +S4SXP | Rcpp::S4 +---------------------------------------------------------- +PROMSXP | Rcpp::Promise +WEAKREFSXP | Rcpp::WeakReference +EXTPTRSXP | template Rcpp::XPtr +---------------------------------------------------------- + +Some SEXP types do not have dedicated Rcpp classes : NILSXP, DOTSXP, +ANYSXP, BCODESXP and CHARSXP. + +Still missing are a few convenience classes such as Rcpp::Date or +Rcpp::Datetime which would map useful and frequently used R data types, but +which do not have an underlying SEXP type. + + +===== Data Interchange ===== + +Data interchange between R and C++ is managed by extensible and powerful yet +simple mechanisms. + +Conversion of a C++ object is managed by the template function Rcpp::wrap. +This function currently manages : + - primitive types : int, double, bool, float, Rbyte, ... + - std::string, const char* + - STL containers such as std::vector and STL maps such as + std::map< std::string, T> provided that the template type T is wrappable +- any class that can be implicitely converted to SEXP, through operator SEXP() + +Conversion of an R object to a C++ object is managed by the Rcpp::as +template which can handle: + - primitive types + - std::string, const char* + - STL containers such as std::vector + +Rcpp::wrap and Rcpp::as are often used implicitely. For example, when +assigning objects to an environment: + + // grab the global environment + Rcpp::Environment global = Rcpp::Environment::global_env() ; + std::deque z( 3 ); z[0] = false; z[1] = true; z[3] = false ; + + global["x"] = 2 ; // implicit call of wrap + global["y"] = "foo"; // implicit call of wrap + global["z"] = z ; // impl. call of wrap> + + int x = global["x"] ; // implicit call of as + std::string y = global["y"] // implicit call of as + std::vector z1 = global["z"] ; // impl. call of as> + +Rcpp contains several examples that illustrate wrap and as. The mechanism was +designed to be extensible. We have developped separate packages to illustrate +how to extend Rcpp conversion mechanisms to third party types. + - RcppArmadillo : conversion of types from the Armadillo C++ library. + - RcppGSL : conversion of types from the GNU Scientific Library. + +Rcpp is also used for data interchange by the RInside package which provides +and easy way of embedding an R instance inside of C++ programs. + + +===== inline use ===== + +Rcpp depends on the inline package by Oleg Sklyar et al. Rcpp then uses the +'cfunction' provided by inline (with argument Rcpp=TRUE) to compile, link and +load C++ function from the R session. + +As of version 0.8.0 of Rcpp, we also define an R function cppfunction that +acts as a facade function to the inline::cfuntion, with specialization for +C++ use. + +This allows quick prototyping of compiled code. All our unit tests are based +on cppfunction and can serve as examples of how to use the mechanism. For example +this function (from the runit.GenericVector.R unit test file) defines from +R a C++ (simplified) version of lapply: + + ## create a compiled function cpp_lapply using cppfunction + cpp_lapply <- cppfunction(signature(x = "list", g = "function" ), + 'Function fun(g) ; + List input(x) ; + List output( input.size() ) ; + std::transform( input.begin(), input.end(), output.begin(), fun ) ; + output.names() = input.names() ; + return output ; + ') + ## call cpp_lapply on the iris data with the R function summary + cpp_lapply( iris, summary ) + + +===== Using Rcpp in other packages ===== + +Rcpp is designed so that its classes are used from other packages. Using Rcpp +requires : + - using the header files provided by Rcpp. This is typically done by adding this + line in the package DESRIPTION file: + + LinkingTo: Rcpp + + and add the following line in the package code: + + #include + +- linking against the Rcpp dynamic or static library, which is achieved by + adding this line to the src/Makevars of the package: + + PKG_LIBS = $(shell ${R_HOME}/bin/Rscript -e "Rcpp:::LdFlags()" ) + + and this line to the src/Makevars.win file: + + PKG_LIBS = $(shell "${R_HOME}/bin${R_ARCH_BIN}/Rscript.exe" -e "Rcpp:::LdFlags()") + +Rcpp contains a function Rcpp.package.skeleton, modelled after +package.skeleton from the utils package in base r, that creates a skeleton of +a package using Rcpp, including example code. + + +===== C++ exceptions ===== + +C++ exceptions are R contexts are both based on non local jumps (at least +on the implementation of exceptions in gcc), so care must be ensure +that one system does not void assumptions of the other. It is therefore +very strongly recommended that each function using C++ catches +C++ exceptions. Rcpp offers the function forward_exception_to_r +to facilitate forwarding the exception to the "R side" as an R condition. +For example : + + SEXP foo( ) { + try { + // user code here + } catch( std::exception& __ex__){ + forward_exception_to_r( __ex__ ) ; + } + // return something here + } + +Alternatively, functions can enclose the user code with the macros BEGIN_RCPP +and END_RCPP, which provides for a more compact way of programming. The +function above could be written as follows using the macros: + + SEXP foo( ) { + BEGIN_RCPP + // user code here + END_RCPP + // return something here + } + +The use of BEGIN_RCPP and END_RCPP is recommended to anticipate future changes +of Rcpp. We might for example decide to install dedicated handlers for specific +exceptions later. + + +===== Experimental code generation macros ===== + +Rcpp contains several macros that can generate repetitive 'boiler plate' code: + RCPP_FUNCTION_0, ..., RCPP_FUNCTION_65 + RCPP_FUNCTION_VOID_0, ..., RCPP_FUNCTION_VOID_65 + RCPP_XP_METHOD_0, ..., RCPP_XP_METHOD_65 + RCPP_XP_METHOD_CAST_0, ..., RCPP_XP_METHOD_CAST_65 + RCPP_XP_METHOD_VOID_0, ..., RCPP_XP_METHOD_VOID_65 + +For example: + + RCPP_FUNCTION_2( int, foobar, int x, int y){ + return x + y ; + } + +This will create a .Call compatible function "foobar" that calls a +c++ function for which we provide the argument list (int x, int y) +and the return type (int). The macro also encloses the call +in BEGIN_RCPP/END_RCPP so that exceptions are properly forwarded to R. + +Examples of the other macros are given in the NEWS file. + +This feature is still experimental, but is being used in packages +highlight and RProtoBuf + + +===== Quality Assurance ===== + +Rcpp uses the RUnit package by Matthias Burger et al and the aforementioned +inline package by Oleg Sklyar et al to provide unit testing. Rcpp currently +has over 500 unit tests (called from more than 230 unit test functions) with +very good coverage of the critical parts of the package and library. + +Source code for unit test functions are stored in the unitTests directory +of the installed package and the results are collected in the "Rcpp-unitTests" +vignette. + +The unit tests can be both during the standard R package build and testing +process, and also when the package is installed. The latter use is helpful +to ensure that no system components have changed in a way that affect the +Rcpp package since it has been installed. To run the tests, execute + + Rcpp:::test() + +where an output directory can be provided as an optional first argument. + + +===== Backwards Compatibility ===== + +We believe the new API is now more complete and useful than the previous set +of classes, which we refer to as the "classic Rcpp API". We would therefore +recommend to package authors using 'classic' Rcpp to move to the new API. +However, the classic API is still maintained and will continue to be +maintained to ensure backwards compatibility for code that uses it. + +Packages uses the 'Classic API' can use features of the new API selectively +and in incremental steps. This provides for a non-disruptive upgrade path. + + +===== Documentation ===== + +The package contains a vignette which provides a short and succinct +introduction to the Rcpp package along with several motivating examples. +Also provided is a vignette containing the regression test summary from +the time the package was built. + + +===== Links ===== + +Rcpp main page: http://dirk.eddelbuettel.com/code/rcpp.html +R-forge project page: http://r-forge.r-project.org/projects/rcpp/ +Dirk's blog section about Rcpp: http://dirk.eddelbuettel.com/blog/code/rcpp/ +Romain's blog section about Rcpp: http://romainfrancois.blog.free.fr/index.php?category/R-package/Rcpp + + +===== Support ===== + +Questions about Rcpp should be directed to the Rcpp-devel mailing list +https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel + + + + -- Dirk Eddelbuettel and Romain Francois + Chicago, IL, USA, and Montpellier, France + May 2010 + diff --git a/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.9.0.txt b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.9.0.txt new file mode 100644 index 00000000..4b99fa8e --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/announce/ANNOUNCE-0.9.0.txt @@ -0,0 +1,196 @@ + +===== Summary ===== + +Version 0.9.0 of the Rcpp package is now on CRAN and its mirrors. This +release marks another step in the development of the package, and a few key +points are highlighted below. More details are in the NEWS and ChangeLog +files included in the package. + + +===== Overview ===== + +Rcpp is an R package and associated C++ library that facilitates integration +of C++ code in R packages. + +The package features a complete set of C++ classes (Rcpp::IntegerVector, +Rcpp:NumericVector, Rcpp::Function, Rcpp::Environment, ...) that makes it +easier to manipulate R objects of matching types (integer vectors, functions, +environments, etc ...). + +Rcpp takes advantage of C++ language features such as the explicit +constructor / destructor lifecycle of objects to manage garbage collection +automatically and transparently. We believe this is a major improvement over +use of PROTECT/UNPROTECT. When an Rcpp object is created, it protects the +underlying SEXP so that the garbage collector does not attempt to reclaim the +memory. This protection is withdrawn when the object goes out of +scope. Moreover, users generally do not need to manage memory directly (via +calls to new / delete or malloc / free) as this is done by the Rcpp classes +or the corresponding STL containers. + +A few key points about Rcpp: + + - a rich API covering all core R data types including vectors, matrices, + functions, environments, ... (with the exeception of factors + which are less useful in C++) + + - seamless (bi-directional) data interchange between R and C++ + + - possibility of inline use permitting definition, compilation, linking and + loading of C++ functions directly from R + + - extensive documentation now covering eight vignettes + + - exception handling and error propagation back to R + + - extensive test suite using RUnit covering over 700 tests + + - extension packages RcppArmadillo and RcppGSL provide easy-to-use + integration with the Armadillo (linear algebra) and GNU GSL librasries + + - increasing adoption among R users and package developers with now + twenty packages from CRAN or BioConductor depending on Rcpp + + - support for the legacy 'classic' Rcpp is now provided by the RcppClassic + package which is being released concurrently with Rcpp 0.9.0 + +Several key features were added during the 0.8.* cycles and are described below. + + +===== Rcpp sugar ===== + +Rcpp now provides syntactic sugar: vectorised expressions at the C++ level +which are motivated by the corresponding R expressions. This covers +operators (binary arithmetic, binary logical, unary), functions (producing +single logical results, mathematical functions and d/p/q/r statistical +functions). Examples comprises anything from ifelse() to pmin()/pmax() or + +A really simply example is a function + + SEXP foo( SEXP xx, SEXP yy){ + NumericVector x(xx), y(yy) ; + return ifelse( x < y, x*x, -(y*y) ) ; + } + +which deploys the sugar 'ifelse' function modeled after the corresponding R +function. Another simple example is + + double square( double x){ + return x*x ; + } + + SEXP foo( SEXP xx ){ + NumericVector x(xx) ; + return sapply( x, square ) ; + } + +where use the sugar function 'sapply' to sweep a simple C++ function which +operates elementwise across the supplied vector. + +The Rcpp-sugar vignette describes sugar in more detail. + + +===== Rcpp modules ===== + +Rcpp modules are inspired by Boost.Python and make exposing C++ functions or +classes to R even easier. A first illustration is provided by this simple +C++ code snippet + + const char* hello( const std::string& who ){ + std::string result( "hello " ) ; + result += who ; + return result.c_str() ; + } + + RCPP_MODULE(yada){ + using namespace Rcpp ; + function( "hello", &hello ) ; + } + +which (after compiling and loading) we can access in R as + + yada <- Module( "yada" ) + yada$hello( "world" ) + +In a similar way, C++ classes can be exposed very easily. + +Rcpp modules are also described in more detail in their own vignette. + + +===== Reference Classes ===== + +R release 2.12.0 introduced Reference Classes. These are formal S4 classes +with the corresponding dispatch method, but passed by reference and easy to +use. Reference Classes can also be exposed to R by using Rcpp modules. + + +===== Extension packackages ===== + +The RcppArmadillo package permits use of the advanced C++ library 'Armadillo, +a C++ linear algebra library aiming towards a good balance between speed and +ease of use, providing integer, floating point and complex matrices and +vectors with lapack / blas support via R. Armadillo uses templates for a +delayed evaluation approach is employed (during compile time) to combine +several operations into one and reduce (or eliminate) the need for +temporaries. Armadillo is useful if C++ has been decided as the language of +choice, rather than another language like Matlab ® or Octave, and aims to be +as expressive as the former. Via Rcpp and RcppArmadillo, R users now have +easy access to this functionality. Examples are provided in the RcppArmadillo +package. + +The RcppGSL package permits easy use of the GNU Scientific Library (GSL), a +collection of numerical routines for scientifc computing. It is particularly +useful for C and C++ programs as it provides a standard C interface to a wide +range of mathematical routines such as special functions, permutations, +combinations, fast fourier transforms, eigensystems, random numbers, +quadrature, random distributions, quasi-random sequences, Monte Carlo +integration, N-tuples, differential equations, simulated annealing, numerical +differentiation, interpolation, series acceleration, Chebyshev +approximations, root-finding, discrete Hankel transforms physical constants, +basis splines and wavelets. There are over 1000 functions in total with an +extensive test suite. The RcppGSL package provides an easy-to-use interface +between GSL data structures and R using concepts from Rcpp. The RcppGSL +package also contains a vignette with more documentation. + + +===== Legacy 'classic' API ===== + +Packages still using code interfacing the initial 'classic' Rcpp API are +encouraged to migrate to the new API. Should a code transition not be +possible, backwards compatibility is provided by the RcppClassic package +released alongside Rcpp 0.9.0. By including RcppClassic.h and building +against the RcppClassic package and library, vintage code can remain +operational using the classic API. The short vignette in the RcppClassic +package has more details. + + +===== Documentation ===== + +The package contains a total of eight vignettes the first of which provides a +short and succinct introduction to the Rcpp package along with several +motivating examples. + + +===== Links ===== + +Rcpp main page: + http://dirk.eddelbuettel.com/code/rcpp.html +R-forge project page: + http://r-forge.r-project.org/projects/rcpp/ +Dirk's blog section about + Rcpp: http://dirk.eddelbuettel.com/blog/code/rcpp/ +Romain's blog section about Rcpp: + http://romainfrancois.blog.free.fr/index.php?category/R-package/Rcpp + + +===== Support ===== + +Questions about Rcpp should be directed to the Rcpp-devel mailing list + https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel + + + + -- Dirk Eddelbuettel, Romain Francois, Doug Bates and John Chambers + December 2010 + + + diff --git a/revdep/library/sprtt/new/Rcpp/bib/Rcpp.bib b/revdep/library/sprtt/new/Rcpp/bib/Rcpp.bib new file mode 100644 index 00000000..dfbbe865 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/bib/Rcpp.bib @@ -0,0 +1,959 @@ +@String{CRAN = "https://CRAN.R-Project.org/" } +@String{manuals = CRAN # "doc/manuals/" } +@String{RCoreTeam = "{R Core Team}" } +@String{RFoundation = "R Foundation for Statistical Computing" } +@String{R-Forge = "https://R-Forge.R-Project.org/" } + +@manual{Abrahams+Grosse-Kunstleve:2003:Boost.Python, + author = { David Abrahams and Ralf W. Grosse-Kunstleve }, + organization = "Boost Consulting", + title = "Building Hybrid Systems with Boost.Python", + year = 2003, + url = "https://www.boostpro.com/writing/bpl.pdf" +} + +@Book{Abrahams+Gurtovoy:2004:TemplateMetaprogramming, + author = {David Abrahams and Aleksey Gurtovoy}, + title = {{C++} {T}emplate {M}etaprogramming: Concepts, Tools + and Techniques from {B}oost and Beyond}, + publisher = {Addison-Wesley}, + year = 2004, + address = {Boston} +} + +@book{Anderson:1990:UGLAPACK, + author = {Anderson, E. and Bai, Z. and Bischof, C. and + Blackford, S. and Demmel, J. and Dongarra, J. and Du + Croz, J. and Greenbaum, A. and Hammarling, S. and + McKenney, A. and Sorensen, D.}, + title = {{LAPACK} Users' Guide}, + edition = {Third}, + publisher = {Society for Industrial and Applied Mathematics}, + year = 1999, + address = {Philadelphia, PA}, + isbn = {0-89871-447-8 (paperback)} +} + +@Manual{Armstrong:2009:RAbstraction, + title = {{RAbstraction}: {C++} abstraction for {R} objects}, + author = {Whit Armstrong}, + year = 2009, + note = {Code repository last updated 2009-07-22.}, + url = {https://github.com/armstrtw/rabstraction} +} + +@Manual{Armstrong:2009:RObjects, + title = {{RObjects}: {C++} wrapper for R objects (a better + implementation of {RAbstraction}}, + author = {Whit Armstrong}, + year = 2009, + note = {Code repository last updated 2009-11-28.}, + url = {https://github.com/armstrtw/RObjects} +} + +@InProceedings{Bates+DebRoy:2001:C++Classes, + author = {Douglas M. Bates and Saikat DebRoy}, + title = {{C++} Classes for {R} Objects}, + booktitle = {Proceedings of the 2nd International Workshop on Distributed + Statistical Computing, March 15--17, 2001, Technische + Universit\"at Wien, Vienna, Austria}, + editor = {Kurt Hornik and Friedrich Leisch}, + year = {2001}, + url = {https://www.ci.tuwien.ac.at/Conferences/DSC-2001/Proceedings/}, + note = {ISSN 1609-395X} +} + + +@Misc{Brokken:2011:Cpp, + author = {Frank B. Brokken}, + title = {C++ Annotations}, + howpublished = {Electronic book, University of Groningen}, + year = 2011, + url = {https://www.icce.rug.nl/documents/cplusplus/} +} + +@Manual{CRAN:anytime, + title = {anytime: Anything to 'POSIXct' or 'Date' Converter}, + author = {Dirk Eddelbuettel}, + year = {2021}, + note = {R package version 0.3.9}, + url = CRAN # "package=anytime" +} + +@Manual{CRAN:BH, + title = {BH: Boost C++ Header Files}, + author = {Dirk Eddelbuettel and John W. Emerson and Michael + J. Kane}, + year = {2021}, + note = {R package version 1.78.0-0}, + url = CRAN # "package=BH" +} + +@Manual{CRAN:Matrix, + title = {\pkg{Matrix}: Sparse and Dense Matrix Classes and Methods}, + author = {Douglas Bates and Martin Maechler}, + year = 2021, + note = {R package version 1.4-0}, + url = CRAN # "package=Matrix" +} + +@Manual{CRAN:RInside, + title = {RInside: C++ classes to embed R in C++ applications}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + year = 2020, + note = {R package version 0.2.16}, + url = CRAN # "package=RInside" +} + +@Manual{CRAN:RProtoBuf, + title = {RProtoBuf: R Interface to the Protocol Buffers API}, + author = {Romain Fran\c{c}ois and Dirk Eddelbuettel and Murray Stokely and Jeroen Ooms}, + year = 2021, + note = {R package version 0.4.18}, + url = CRAN # "package=RProtoBuf" +} + +@Manual{CRAN:RQuantLib, + title = {RQuantLib: {R} interface to the {QuantLib} library}, + author = {Dirk Eddelbuettel and Khanh Nguyen and Terry Leitch}, + year = 2021, + note = {R package version 0.4.14}, + url = CRAN # "package=RQuantLib" +} + +@Manual{CRAN:RUnit, + title = {RUnit: R Unit Test Framework}, + author = {Matthias Burger and Klaus Juenemann and Thomas + Koenig}, + year = 2018, + note = {R package version 0.4.32}, + url = CRAN # "package=RUnit" +} + +@Manual{CRAN:Rcpp, + title = {{Rcpp}: Seamless {R} and {C++} Integration}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois and JJ + Allaire and Kevin Ushey and Qiang Kou and + Nathan Russel and John Chambers and Douglas Bates}, + year = 2022, + note = {R package version 1.0.9}, + url = CRAN # "package=Rcpp" +} + +@Manual{CRAN:Rcpp:Attributes, + crossref = {CRAN:Rcpp}, + author = {J. J. Allaire and Dirk Eddelbuettel and Romain + Fran\c{c}ois}, + title = {{Rcpp} Attributes}, + year = 2022, + note = {Vignette included in R package Rcpp}, + url = CRAN # "package=Rcpp" +} + +@Manual{CRAN:Rcpp:FAQ, + crossref = {CRAN:Rcpp}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + title = {Frequently Asked Questions About {Rcpp}}, + year = 2022, + note = {Vignette included in R package {Rcpp}}, + url = CRAN # "package=Rcpp" +} + +@Manual{CRAN:Rcpp:Modules, + crossref = {CRAN:Rcpp}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + title = {Exposing {C++} functions and classes with {Rcpp} modules}, + year = 2022, + note = {Vignette included in R package Rcpp}, + url = CRAN # "package=Rcpp" +} + +@Manual{CRAN:Rcpp:Package, + crossref = {CRAN:Rcpp}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + title = {Writing a package that uses {Rcpp}}, + year = 2022, + note = {Vignette included in R package {Rcpp}}, + url = CRAN # "package=Rcpp" +} + +@Manual{CRAN:Rcpp:Sugar, + crossref = {CRAN:Rcpp}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + title = {Rcpp syntactic sugar}, + year = 2022, + note = {Vignette included in R package {Rcpp}}, + url = CRAN # "package=Rcpp" +} + +@Manual{CRAN:RcppArmadillo, + title = {RcppArmadillo: Rcpp integration for Armadillo + templated linear algebra library}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois and + Douglas Bates and Binxiang Ni}, + year = 2021, + note = {R package version 0.10.7.5.0}, + url = CRAN # "package=RcppArmadillo" +} + +@Manual{CRAN:RcppCCTZ, + title = {RcppCCTZ: Rcpp Bindings for the CCTZ Library}, + author = {Dirk Eddelbuettel}, + year = 2021, + note = {R package version 0.2.10}, + url = CRAN # "package=RcppCCTZ" +} + +@Manual{CRAN:RcppClassic, + title = {RcppClassic: Deprecated 'classic' Rcpp API}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + year = 2019, + note = {R package version 0.9.12}, + url = CRAN # "package=RcppClassic" +} + +@Manual{CRAN:RcppDate, + title = {RcppDate: 'date' C++ Header Libary for Date and Time Functionality}, + author = {Dirk Eddelbuettel}, + year = 2021, + note = {R package version 0.0.3}, + url = CRAN # "package=RcppDate" +} + +@Manual{CRAN:RcppDE, + title = {RcppDE: Global optimization by differential evolution in C++}, + author = {Dirk Eddelbuettel}, + year = 2018, + note = {R package version 0.1.6}, + url = CRAN # "package=RcppDE" +} + +@Manual{CRAN:RcppEigen, + title = {RcppEigen: Rcpp integration for the Eigen templated linear + algebra library}, + author = {Douglas Bates and Dirk Eddelbuettel and Romain Fran\c{c}ois and Yixuan Qiu}, + year = 2020, + note = {{R} package version 0.3.3.9.1}, + url = CRAN # "package=RcppEigen" +} + +@Manual{CRAN:RcppExamples, + title = {RcppExamples: Examples using {Rcpp} to interface {R} + and {C++}}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + year = 2019, + note = {R package version 0.1.9}, + url = CRAN # "package=RcppExamples" +} + +@Manual{CRAN:RcppGSL, + title = {RcppGSL: Rcpp integration for GNU GSL vectors and matrices}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + year = 2021, + note = {R package version 0.3.10}, + url = CRAN # "package=RcppGSL" +} + +@Manual{CRAN:RcppZiggurat, + title = {RcppZiggurat: Rcpp Integration of Different Ziggurat Normal RNG Implementations}, + author = {Dirk Eddelbuettel}, + year = 2020, + note = {R package version 0.1.6}, + url = CRAN # "package=RcppZiggurat" +} + +@Manual{CRAN:Rserve, + title = {Rserve: Binary R server}, + author = {Simon Urbanek}, + year = 2021, + note = {R package version 1.8-10}, + url = CRAN # "package=Rserve" +} + +@Manual{CRAN:cxxPack, + title = {cxxpack: {R/C++} Tools for Literate Statistical + Practice}, + author = {Dominick Samperi}, + year = 2010, + note = {R package version 7.0.6}, + url = CRAN # "package=cxxPack" +} + +@Manual{CRAN:devtools, + title = {devtools: Tools to Make Developing R Packages + Easier}, + author = {Hadley Wickham and Jim Hester and Winston Chang}, + year = 2021, + note = {R package version 2.4.3}, + url = CRAN # "package=devtools" +} + +@Manual{CRAN:highlight, + title = {highlight: Syntax highlighter}, + author = {Hadley Wickham and Romain Fran\c{c}ois and Andre Simon}, + year = 2019, + note = {R package with version 0.5.0}, + url = CRAN # "package=highlight" +} + +@Manual{CRAN:inline, + title = {inline: Inline C, C++, Fortran function calls from + R}, + author = {Oleg Sklyar and Duncan Murdoch and Mike Smith and + Dirk Eddelbuettel and Romain Fran\c{c}ois and + Karline Soetaert and Johannes Ranke}, + year = 2021, + note = {R package version 0.3.19}, + url = CRAN # "package=inline" +} + +@Manual{CRAN:littler, + title = {littler: {R} at the {Command-Line} via r}, + author = {Dirk Eddelbuettel and Jeffrey Horner}, + year = 2021, + note = {R package version 0.3.15}, + url = CRAN # "package=littler" +} + +@Manual{CRAN:microbenchmark, + title = {microbenchmark: Accurate Timing Functions}, + author = {Olaf Mersmann}, + year = 2021, + note = {R package version 1.4-9}, + url = CRAN # "package=microbenchmark" +} + +@Manual{CRAN:minqa, + title = {minqa: Derivative-free optimization algorithms by + quadratic approximation}, + author = {Douglas Bates and Katharine M. Mullen and John + C. Nash and Ravi Varadhan}, + year = 2014, + note = {R package version 1.2.4}, + url = CRAN # "package=minqa" +} + +@Manual{CRAN:pkgKitten, + title = {pkgKitten: Create Simple Packages Which Do not Upset + R Package Checks}, + author = {Dirk Eddelbuettel}, + year = {2021}, + note = {R package version 0.2.2}, + url = CRAN # "package=pkgKitten" +} + +@Manual{CRAN:profvis, + title = {profvis: Interactive Visualizations for Profiling R Code}, + author = {Winston Chang and Javier Luraschi and and Timothy Mastny}, + year = 2020, + note = {R package version 0.3.7}, + url = CRAN # "package=profvis" +} + +@Manual{CRAN:rbenchmark, + title = {\pkg{rbenchmark}: Benchmarking routine for R}, + author = {Wacek Kusnierczyk}, + year = 2012, + note = {R package version 1.0.0}, + url = CRAN # "package=rbenchmark" +} + +@Manual{CRAN:roxygen2, + title = {roxygen2: In-source documentation for R}, + author = {Hadley Wickham and Peter Danenberg and G\a'bor Cs\a'rdi and Manuel Eugster}, + year = 2021, + note = {R package version 7.1.2}, + url = CRAN # "package=roxygen2" +} + +@Article{CRAN:testthat, + author = {Hadley Wickham}, + title = {testthat: Get Started with Testing}, + journal = {The R Journal}, + year = 2011, + volume = 3, + pages = {5--10}, +} + +@Book{Chambers:1998:PwD, + author = {John M. Chambers}, + title = {Programming with Data: {A} Guide to the {S} Language}, + publisher = {Springer-Verlag}, + year = 1998, + address = {Heidelberg}, + note = {{ISBN} 978-0387985039} +} + +@Book{Chambers:2008:SoDA, + author = {John M. Chambers}, + title = {Software for Data Analysis: Programming with {R}}, + publisher = {Springer-Verlag}, + year = 2008, + series = {Statistics and Computing}, + address = {Heidelberg}, + note = {{ISBN} 978-0-387-75935-7} +} + +@Book{Chambers:2016:ExtR, + author = {John M. Chambers}, + title = {Extending R}, + publisher = {Chapman and Hall/CRC}, + year = 2016, + series = {{The R Series}}, + address = {London}, + note = {{ISBN} 9781498775717} +} + +@Article{Chambers:2020:S+R+DS, + author = {Chambers, John M.}, + title = {S, R, and Data Science}, + year = 2020, + issue_date = {June 2020}, + publisher = {Association for Computing Machinery}, + address = {New York, NY, USA}, + volume = 4, + number = {HOPL}, + url = {https://doi.org/10.1145/3386334}, + doi = {10.1145/3386334}, + journal = {Proceeding of the ACM on Programming Languages}, + month = jun, + articleno = 84, + numpages = 17, + keywords = {data science, statistical computing, scientific + computing} +} + +@Misc{Cpp11, + author = "ISO/IEC", + organization = "{International Organization for Standardization}", + title = "\proglang{C++} 2011 Standard Document 14882:2011", + howpublished = {ISO/IEC Standard Group for Information Technology / Programming Languages / C++}, + year = 2011, + url = "https://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=50372", + urlansi = "https://webstore.ansi.org/RecordDetail.aspx?sku=ISO/IEC%2014882:2011" +} + +@book{Dongarra:1979:UGLINPACK, + title = {LINPACK users' guide}, + author = {Dongarra, Jack J and Moler, Cleve B and Bunch, James + R and Stewart, Gilbert W}, + year = 1979, + publisher = {SIAM} +} + +@Article{Eddelbuettel+Sanderson:2013:RcppArmadillo, + title = {{RcppArmadillo}: Accelerating {R} with High-Performance {C++} Linear Algebra}, + author = {Dirk Eddelbuettel and Conrad Sanderson}, + journal = {Computational Statistics and Data Analysis}, + year = 2014, + volume = 71, + month = {March}, + pages = {1054--1063}, + doi = {10.1016/j.csda.2013.02.005}, + url = {https://dx.doi.org/10.1016/j.csda.2013.02.005} +} + +@Article{Eddelbuettel+Sanderson:2014:RcppArmadillo, + title = {{RcppArmadillo}: Accelerating {R} with High-Performance {C++} Linear Algebra}, + author = {Dirk Eddelbuettel and Conrad Sanderson}, + journal = {Computational Statistics and Data Analysis}, + year = 2014, + volume = 71, + month = {March}, + pages = {1054--1063}, + doi = {10.1016/j.csda.2013.02.005}, + url = {https://dx.doi.org/10.1016/j.csda.2013.02.005} +} + +@Book{Eddelbuettel:2013:Rcpp, + author = {Dirk Eddelbuettel}, + title = {Seamless R and C++ Integration with Rcpp}, + publisher = {Springer}, + series = {Use R!}, + year = 2013, + address = {New York}, + isbn = {978-1-4614-6867-7} +} + +@article{Efron:1979:Bootstrap, + URL = {https://www.jstor.org/stable/2958830}, + author = {Efron, B.}, + journal = {The Annals of Statistics}, + number = {1}, + pages = {1-26}, + publisher = {Institute of Mathematical Statistics}, + title = {Bootstrap Methods: Another Look at the Jackknife}, + volume = {7}, + year = {1979} +} + +@MISC{Eigen:Web, + author = {Ga\"{e}l Guennebaud and Beno\^{i}t Jacob and others}, + title = {Eigen v3}, + year = 2012, + url = {https://eigen.tuxfamily.org} +} + +@Manual{GSL, + title = {{GNU} {S}cientific {L}ibrary {R}eference {M}anual}, + author = {Mark Galassi and Jim Davies and James Theiler and Brian Gough and Gerard Jungman and Patrick Alken and Michael Booth and Fabrice Rossi}, + year = {2010}, + edition = {3rd}, + note = {Version 1.14. {ISBN} 0954612078}, + url = {https://www.gnu.org/software/gsl} +} + +@Book{Gentleman:2009:RProgramming, + author = {Robert Gentleman}, + title = {R Programming for Bioinformatics}, + publisher = {Chapman \& Hall/CRC}, + year = 2009, + series = {Computer Science and Data Analysis}, + address = {Boca Raton, FL} +} + +@Manual{GitHub:Rperform, + title = {Rperform: Rperform - Performance testing for R packages}, + author = {Akash Tandon and Toby Dylan Hocking}, + year = {2015}, + note = {R package version 0.0.0.9000}, +} + +@Article{Gropp+Lusk+Doss+Skjellum:1996:MPI, + author = {William Gropp and Ewing Lusk and Nathan Doss and Anthony Skjellum}, + title = {A high-performance, portable implementation of the {MPI} message passing interface standard}, + journal = {Parallel Computing}, + year = 1996, + url = {https://dx.doi.org/10.1016/0167-8191(96)00024-5}, + doi = {10.1016/0167-8191(96)00024-5}, + volume = 22, + number = 6, + pages = {789--828} +} + +@Book{Gropp+Lusk+Skjellum:1999:MPI, + author = {William Gropp and Ewing Lusk and Anthony Skjellum}, + title = {Using {MPI}: Portable Parallel Programming with the Message Passing Interface}, + publisher = {MIT Press}, + year = 1999, + series = {Scientific and Engineering Computation Series}, + edition = {2nd}, + month = {November}, + note = {{ISBN} 978-0-262-57132-6} +} + +@article{Ihaka:1996, + Author = {Ihaka, Ross and Gentleman, Robert}, + Journal = {Journal of Computational and Graphical Statistics}, + Number = 3, + Pages = {299--314}, + Title = {R: A Language for Data Analysis and Graphics}, + Volume = 5, + Year = 1996 +} + +@article{JOSS:RcppCNPy, + doi = {10.21105/joss.00055}, + url = {https://doi.org/10.21105/joss.00055}, + year = {2016}, + month = {sep}, + publisher = {The Open Journal}, + volume = {1}, + number = {5}, + author = {Dirk Eddelbuettel and Wush Wu}, + title = {{RcppCNPy}: Read-Write Support for {NumPy} Files in R}, + journal = {The Journal of Open Source Software} +} + +@Article{JSS:RProtoBuf, + title = {{RProtoBuf}: Efficient Cross-Language Data Serialization in + {R}}, + author = {Dirk Eddelbuettel and Murray Stokely and Jeroen Ooms}, + journal = {Journal of Statistical Software}, + year = {2016}, + volume = {71}, + number = {2}, + pages = {1--24}, + url = {https://doi.org/10.18637/jss.v071.i02}, + doi = {10.18637/jss.v071.i02} +} + +@Article{JSS:Rcpp, + title = {{Rcpp}: Seamless {R} and {C++} Integration}, + author = {Dirk Eddelbuettel and Romain Fran\c{c}ois}, + journal = {Journal of Statistical Software}, + year = 2011, + volume = 40, + number = 8, + pages = {1--18}, + url = {https://doi.org/10.18637/jss.v040.i08}, + doi = {10.18637/jss.v040.i08} +} + +@Article{JSS:RcppEigen, + title = {Fast and Elegant Numerical Linear Algebra Using the + {RcppEigen} Package}, + author = {Douglas Bates and Dirk Eddelbuettel}, + journal = {Journal of Statistical Software}, + year = {2013}, + volume = {52}, + number = {5}, + pages = {1--24}, + url = {https://doi.org/10.18637/jss.v052.i05}, + doi = {10.18637/jss.v052.i05} +} + +@Unpublished{Java+Gaile+Manly:2007:RCpp, + author = {James J. Java and Daniel P. Gaile and Kenneth + E. Manly}, + title = {{R/Cpp}: Interface Classes to Simplify Using {R} + Objects in {C++} Extensions}, + note = {Unpublished manuscript, University at Buffalo}, + url = + {https://sphhp.buffalo.edu/biostat/research/techreports/UB_Biostatistics_TR0702.pdf}, + month = {July}, + year = 2007 +} + +@misc{KDE-TechBase:2012, + author = {KDE-TechBase}, + title = {Binary Compatibility Issues With {C++}}, + url = "https://techbase.kde.org/Policies/Binary_Compatibility_Issues_With_C++", + year = 2012, + note = "[Online; accessed 24-November-2012]" +} + +@InProceedings{Leisch:2008:Tutorial, + author = {Friedrich Leisch}, + title = {Tutorial on {C}reating \proglang{R} {P}ackages}, + booktitle = {COMPSTAT 2008 -- Proceedings in Computational + Statistics}, + year = 2008, + editor = {Paula Brito}, + address = {Heidelberg}, + publisher = {Physica Verlag}, + url = CRAN # "doc/contrib/Leisch-CreatingPackages.pdf" +} + +@Manual{Liang:2008:rcppbind, + title = {rcppbind: {A} template library for R/C++ developers}, + author = {Gang Liang}, + year = 2008, + note = {R package version 1.0}, + url = R-Forge # "projects/rcppbind" +} + +@Book{Lippman+Lajoie+Moo:2005:Cpp_Primer, + author = {Stanley B. Lippman and Jos\'{e}e Lajoie and Barbara E. Moo}, + title = {The C++ Primer}, + publisher = {Addison-Wesley}, + address = {Boston}, + year = 2005, + edition = {4th} +} + +@Book{Matloff:2011:ArtOfR, + author = {Norman Matloff}, + title = {The Art of R Programming: A Tour of Statistical Software Design}, + publisher = {No Starch Press}, + address = {San Francisco, CA}, + year = 2011 +} + +@InProceedings{Maurer+Wong:2008:AttributesInC++, + author = {Jens Maurer and Michael Wong}, + title = {Towards support for attributes in {C++} (Revision + 6)}, + booktitle = {JTC1/SC22/WG21 - The C++ Standards Committee}, + year = {2008}, + url = + {https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf}, + note = {{N2761=08-0271}} +} + +@book{Meyers:1995:MoreEffectiveC++, + author = {Scott Meyers}, + title = {More Effective C++: 35 New Ways to Improve Your + Programs and Designs}, + year = 1995, + note = {{ISBN} 020163371X}, + publisher = {Addison-Wesley}, + address = {Boston} +} + +@book{Meyers:2001:EffectiveSTL, + author = {Scott Meyers}, + title = {Effective STL: 50 specific ways to improve your use + of the standard template library}, + year = 2001, + note = {{ISBN} 0-201-74962-9}, + publisher = {Addison-Wesley}, + address = {Essex} +} + +@book{Meyers:2005:EffectiveC++, + author = {Scott Meyers}, + title = {Effective C++: 55 Specific Ways to Improve Your + Programs and Designs}, + year = 2005, + note = {{ISBN} 978-0321334879}, + publisher = {Addison-Wesley}, + address = {Boston}, + edition = {3rd}, +} + +@Article{PeerJ:Rcpp, + author = {Dirk Eddelbuettel and James Joseph Balamuta}, + title = {Extending R with C++: A Brief Introduction to Rcpp}, + journal = {PeerJ Preprints}, + volume = 5, + issue = {e3188v1}, + year = 2017, + month = {August}, + url = {https://doi.org/10.7287/peerj.preprints.3188v1/}, + doi = {10.7287/peerj.preprints.3188v1/} +} + +@Book{Plauger+Et+Al:2000:STL, + author = {P.J. Plauger and Alexander Stepanov and Meng Lee and + David R. Musser}, + title = {The {C++} Standard Template Library}, + publisher = {Prentice Hall PTR}, + year = 2000, + note = {{ISBN} 978-0134376332} +} + +@manual{QuantLib, + author = {{QuantLib Core Team}}, + year = 2021, + title = {QuantLib: a free/open-source library for quantitative finance}, + url = {https://quantlib.org} +} + +@manual{R:Administration, + author = RCoreTeam, + organization = RFoundation, + address = {Vienna, Austria}, + year = 2018, + title = "R Installation and Administration", + annote = {{ISBN} 3-900051-09-7}, + url = manuals # "R-admin.html" +} + +@manual{R:Extensions, + author = RCoreTeam, + organization = RFoundation, + address = {Vienna, Austria}, + year = 2021, + title = "Writing R extensions", + annote = {{ISBN} 3-900051-11-9}, + url = manuals # "R-exts.html" +} + +@manual{R:Internals, + author = RCoreTeam, + organization = RFoundation, + address = {Vienna, Austria}, + year = 2021, + title = "R internals", + annote = {{ISBN} 3-900051-14-3}, + url = manuals # "R-ints.html" +} + +@manual{R:Language, + author = RCoreTeam, + organization = RFoundation, + address = {Vienna, Austria}, + year = 2021, + title = "R language", + annote = {{ISBN} 3-900051-13-5}, + url = manuals # "R-lang.html" +} + +@Manual{R:Main, + title = {R: A Language and Environment for Statistical + Computing}, + author = RCoreTeam, + organization = RFoundation, + address = {Vienna, Austria}, + year = 2021, + url = {https://www.R-project.org/} +} + +@InProceedings{Runnalls:2009:CXXR, + author = {Andrew Runnalls}, + title = {Aspects of {CXXR} internals}, + booktitle = {Directions in Statistical Computing}, + address = {University of Copenhagen, Denmark}, + year = 2009 +} + +@Manual{Samperi:2009:RcppTemplate, + title = {RcppTemplate: Rcpp {R/C++} Object Mapping Library + and Package Template}, + author = {Dominick Samperi}, + year = 2009, + note = {(Archived) R package version 6.1}, + url = CRAN # "/src/contrib/Archive/RcppTemplate" +} + +@article{Sanderson+Curtin:2016, + doi = {10.21105/joss.00026}, + url = {https://dx.doi.org/10.21105/joss.00026}, + year = 2016, + month = {{June}}, + publisher = {The Open Journal}, + volume = 1, + number = 2, + author = {Conrad Sanderson and Ryan Curtin}, + title = {Armadillo: {A Template-Based C++ Library for Linear + Algebra}}, + journal = {{JOSS}} +} + +@TechReport{Sanderson:2010:Armadillo, + author = {Conrad Sanderson}, + title = {{Armadillo}: {An} open source {C++} Algebra Library + for Fast Prototyping and Computationally Intensive + Experiments }, + institution = {{NICTA}}, + year = 2010, + url = "https://arma.sf.net" +} + +@Book{Stroustrup:1997:Cpp, + author = {Bjarne Stroustrup}, + title = {The C++ Programming Language}, + publisher = {Addison-Wesley}, + address = {Boston}, + year = 1997, + edition = {3rd} +} + +@Book{Stroustrup:2013:Cpp, + author = {Bjarne Stroustrup}, + title = {The C++ Programming Language}, + publisher = {Addison-Wesley}, + address = {Boston}, + year = 2013, + pages = 1368, + edition = {4th} +} + +@Article{TAS:Rcpp, + author = {Dirk Eddelbuettel and James Joseph Balamuta}, + title = {Extending R with C++: A Brief Introduction to Rcpp}, + journal = {The American Statistician}, + volume = 72, + number = 1, + year = 2018, + month = {August}, + url = {https://doi.org/10.1080/00031305.2017.1375990}, + doi = {10.1080/00031305.2017.1375990} +} + +@Article{TempleLang:2009:ModestProposal, + author = {Duncan {Temple Lang}}, + title = {A modest proposal: an approach to making the + internal {R} system extensible}, + journal = {Computational Statistics}, + year = 2009, + volume = 24, + number = 2, + pages = {271-281}, + month = {May} +} + +@Article{TempleLang:2009:RGCCTranslationUnit, + author = {Duncan {Temple Lang}}, + title = {Working with meta-data from {C/C++} code in {R}: the + {RGCCTranslationUnit} package}, + journal = {Computational Statistics}, + year = 2009, + volume = 24, + number = 2, + pages = {283-293}, + month = {May} +} + +@InProceedings{Urbanek:2003:Rserve, + author = {Simon Urbanek}, + title = {{Rserve}: A Fast Way to Provide {R} Functionality to + Applications}, + booktitle = {Proceedings of the 3rd International Workshop on Distributed + Statistical Computing, Vienna, Austria}, + editor = {Kurt Hornik and Friedrich Leisch and Achim Zeileis}, + year = {2003}, + url = {https://www.ci.tuwien.ac.at/Conferences/DSC-2003/Proceedings/}, + note = {{ISSN 1609-395X}} +} + +@Book{Vandevoorde+Josuttis:2003:Templates, + author = {David Vandevoorde and Nicolai M. Josuttis}, + title = {{C++} {T}emplates: The Complete Guide}, + publisher = {Addison-Wesley}, + year = 2003, + address = {Boston} +} + +@inproceedings{Veldhuizen:1998:Blitz, + author = {Todd L. Veldhuizen}, + title = {Arrays in {Blitz++}}, + booktitle = {ISCOPE '98: Proceedings of the Second International + Symposium on Computing in Object-Oriented Parallel + Environments}, + note = {{ISBN} 3-540-65387-2}, + year = 1998, + pages = {223--230}, + publisher = {Springer-Verlag}, + address = {London}, +} + + +@Book{Venables+Ripley:2000:SProgramming, + author = {Willian N. Venables and Brian D. Ripley}, + title = {S Programming}, + publisher = {Springer-Verlag}, + year = 2000, + series = {Statistics and Computing}, + address = {New York} +} + + +@Book{Venables+Ripley:2002:MASS, + title = {Modern Applied Statistics with S}, + author = {W. N. Venables and B. D. Ripley}, + publisher = {Springer}, + edition = {Fourth}, + address = {New York}, + year = 2002, + note = {ISBN 0-387-95457-0}, + url = {https://www.stats.ox.ac.uk/pub/MASS4}, +} + +@misc{arxiv:corels, + title = {Learning Certifiably Optimal Rule Lists for + Categorical Data}, + author = {Elaine Angelino and Nicholas Larus-Stone and Daniel + Alabi and Margo Seltzer and Cynthia Rudin}, + year = 2017, + howpublished = {\href{https://www.arxiv.org/1704.01701}{arXiv:1704.01701}}, + archivePrefix ={arXiv}, + primaryClass = {stat.ML} +} + +@Misc{github:corels, + author = {Nicholas Laurus-Stone}, + title = {corels: {Learning Certifiably Optimal Rule Lists}}, + howpublished = {\url{https://github.com/nlarusstone/corels}. Also online at \url{https://corels.eecs.harvard.edu/corels/}}, + month = 06, + year = 2019 +} + +@Misc{github:rcppcorels, + author = {Dirk Eddelbuettel}, + title = {RcppCorels: R binding for the 'Certifiably Optimal RulE ListS (Corels)' Learner}, + howpublished = {\url{https://github.com/eddelbuettel/rcppcorels}}, + month = 11, + year = 2019 +} diff --git a/revdep/library/sprtt/new/Rcpp/discovery/cxx0x.R b/revdep/library/sprtt/new/Rcpp/discovery/cxx0x.R new file mode 100644 index 00000000..5cc3da42 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/discovery/cxx0x.R @@ -0,0 +1,60 @@ +#!/bin/env Rscript + +# Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +# This script is used by the Rcpp::RcppCxx0xFlags function to +# generate the "-std=c++0x" flag when the compiler in use is GCC >= 4.3 + +local({ + flag <- function(){ + + cxx0x.code <- ' + #include + #include + + extern "C" SEXP cxx0x(){ + + #ifdef __GNUC__ + #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) + #if GCC_VERSION >= 40300 + return mkString( "-std=c++0x" ) ; + #endif + #endif + return mkString( "" ) ; + } + ' + td <- tempfile() + dir.create( td ) + here <- getwd() + setwd(td) + dll <- sprintf( "cxx0x%s", .Platform$dynlib.ext ) + on.exit( { + dyn.unload( dll ) + setwd(here) ; + unlink( td, recursive = TRUE ) + } ) + writeLines( cxx0x.code, "cxx0x.cpp" ) + cmd <- sprintf( "%s/R CMD SHLIB cxx0x.cpp", R.home(component="bin") ) + system( cmd, intern = TRUE ) + dyn.load( dll ) + res <- tryCatch( .Call( "cxx0x" ), error = "" ) + res + } + cat( flag() ) +}) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/Attributes/Depends.cpp b/revdep/library/sprtt/new/Rcpp/examples/Attributes/Depends.cpp new file mode 100644 index 00000000..228b4e3c --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/Attributes/Depends.cpp @@ -0,0 +1,28 @@ + +// [[Rcpp::depends(RcppArmadillo)]] + +#include + +using namespace Rcpp; + +// [[Rcpp::export]] +List fastLm(NumericVector yr, NumericMatrix Xr) { + + int n = Xr.nrow(), k = Xr.ncol(); + + arma::mat X(Xr.begin(), n, k, false); // reuses memory and avoids extra copy + arma::colvec y(yr.begin(), yr.size(), false); + + arma::colvec coef = arma::solve(X, y); // fit model y ~ X + arma::colvec resid = y - X*coef; // residuals + + double sig2 = arma::as_scalar( arma::trans(resid)*resid/(n-k) ); + // std.error of estimate + arma::colvec stderrest = arma::sqrt( + sig2 * arma::diagvec( arma::inv(arma::trans(X)*X)) ); + + return List::create(Named("coefficients") = coef, + Named("stderr") = stderrest + ); +} + diff --git a/revdep/library/sprtt/new/Rcpp/examples/Attributes/Export.cpp b/revdep/library/sprtt/new/Rcpp/examples/Attributes/Export.cpp new file mode 100644 index 00000000..7252630e --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/Attributes/Export.cpp @@ -0,0 +1,40 @@ + +#include + +using namespace Rcpp; + +// [[Rcpp::export]] +int fibonacci(const int x) { + + if (x == 0) return(0); + if (x == 1) return(1); + + return (fibonacci(x - 1)) + fibonacci(x - 2); +} + + +// [[Rcpp::export("convolveCpp")]] +NumericVector convolve(NumericVector a, NumericVector b) { + + int na = a.size(), nb = b.size(); + int nab = na + nb - 1; + NumericVector xab(nab); + + for (int i = 0; i < na; i++) + for (int j = 0; j < nb; j++) + xab[i + j] += a[i] * b[j]; + + return xab; +} + + +// [[Rcpp::export]] +List lapplyCpp(List input, Function f) { + + List output(input.size()); + + std::transform(input.begin(), input.end(), output.begin(), f); + output.names() = input.names(); + + return output; +} diff --git a/revdep/library/sprtt/new/Rcpp/examples/Attributes/cppFunction.R b/revdep/library/sprtt/new/Rcpp/examples/Attributes/cppFunction.R new file mode 100644 index 00000000..15d13b4e --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/Attributes/cppFunction.R @@ -0,0 +1,43 @@ + +library(Rcpp) + +cppFunction(' + NumericVector convolveCpp(NumericVector a, NumericVector b) { + + int na = a.size(), nb = b.size(); + int nab = na + nb - 1; + NumericVector xab(nab); + + for (int i = 0; i < na; i++) + for (int j = 0; j < nb; j++) + xab[i + j] += a[i] * b[j]; + + return xab; + } +') + +convolveCpp(c(1,2,3), matrix(3,3)) + + +cppFunction(depends='RcppArmadillo', code=' + List fastLm(NumericVector yr, NumericMatrix Xr) { + + int n = Xr.nrow(), k = Xr.ncol(); + + arma::mat X(Xr.begin(), n, k, false); // reuses memory and avoids copy + arma::colvec y(yr.begin(), yr.size(), false); + + arma::colvec coef = arma::solve(X, y); // fit model y ~ X + arma::colvec resid = y - X*coef; // residuals + + double sig2 = arma::as_scalar( arma::trans(resid)*resid/(n-k) ); + // std.error of estimate + arma::colvec stderrest = arma::sqrt( + sig2 * arma::diagvec( arma::inv(arma::trans(X)*X)) ); + + return List::create(Named("coefficients") = coef, + Named("stderr") = stderrest + ); +} +') + diff --git a/revdep/library/sprtt/new/Rcpp/examples/Attributes/sourceCpp.R b/revdep/library/sprtt/new/Rcpp/examples/Attributes/sourceCpp.R new file mode 100644 index 00000000..ec25c17c --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/Attributes/sourceCpp.R @@ -0,0 +1,10 @@ + +library(Rcpp) + +sourceCpp("Export.cpp") +fibonacci(5) + + +sourceCpp("Depends.cpp") +fastLm(c(1,2,3), matrix(3,3)) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/GNUmakefile b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/GNUmakefile new file mode 100644 index 00000000..9033f4ea --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/GNUmakefile @@ -0,0 +1,29 @@ + +## comment this out if you need a different version of R, +## and set set R_HOME accordingly as an environment variable +R_HOME := $(shell R RHOME) + +## include headers and libraries for R +RCPPFLAGS := $(shell $(R_HOME)/bin/R CMD config --cppflags) +RLDFLAGS := $(shell $(R_HOME)/bin/R CMD config --ldflags) + +## include headers and libraries for Rcpp interface classes +RCPPINCL := $(shell echo 'Rcpp:::CxxFlags()' | $(R_HOME)/bin/R --vanilla --slave) +RCPPLIBS := $(shell echo 'Rcpp:::LdFlags()' | $(R_HOME)/bin/R --vanilla --slave) + +c_sources := $(wildcard *.c) +c_sharedlibs := $(patsubst %.c,%.o,$(c_sources)) + +cpp_sources := $(wildcard *.cpp) +cpp_sharedlibs := $(patsubst %.cpp,%.o,$(cpp_sources)) + +all : $(c_sharedlibs) $(cpp_sharedlibs) + +%.o : %.c + R CMD SHLIB $< + +%.o : %.cpp + PKG_CPPFLAGS="$(RCPPFLAGS) $(RCPPINCL)" PKG_LIBS="$(RLDFLAGS) $(RCPPLIBS)" R CMD SHLIB $< + +run : $(c_sharedlibs) $(cpp_sharedlibs) + Rscript exampleRCode.r diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/buildAndRun.sh b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/buildAndRun.sh new file mode 100644 index 00000000..473c49ab --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/buildAndRun.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +rm -f *.o *.so + +# build the shared library for the C variant +R CMD SHLIB convolve2_c.c +R CMD SHLIB convolve7_c.c + +# build the shared library for the C++ variant +# we have to let R know where the Rcpp header and library are +export PKG_CPPFLAGS=`Rscript -e "Rcpp:::CxxFlags()"` +export PKG_LIBS=`Rscript -e "Rcpp:::LdFlags()"` +R CMD SHLIB convolve3_cpp.cpp +R CMD SHLIB convolve4_cpp.cpp +R CMD SHLIB convolve5_cpp.cpp +R CMD SHLIB convolve8_cpp.cpp +R CMD SHLIB convolve9_cpp.cpp +R CMD SHLIB convolve10_cpp.cpp +R CMD SHLIB convolve11_cpp.cpp +R CMD SHLIB convolve12_cpp.cpp +R CMD SHLIB convolve14_cpp.cpp + +# call R so that we get an interactive session +Rscript exampleRCode.r + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.cpp new file mode 100644 index 00000000..d21b4f04 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.cpp @@ -0,0 +1,36 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// this version expands convolve8_cpp by making Vec mimic the structure of +// NumericVector. It peforms well, so this is is not the structure of +// NumericVector that is the problem. So what is it then ? +// +// could it be because NumericVector is in a different library than +// this code, so that operator[] is not inlined ? +// +// clues: +// - http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka3538.html + +#include + +#include "convolve10_cpp.h" + +RcppExport SEXP convolve10cpp(SEXP a, SEXP b){ + Rcpp::NumericVector xa(a); + Rcpp::NumericVector xb(b); + int n_xa = xa.size() ; + int n_xb = xb.size() ; + int nab = n_xa + n_xb - 1; + Rcpp::NumericVector xab(nab); + + Vec vab(xab.begin()), va(xa.begin()), vb(xb.begin()) ; + + for (int i = 0; i < n_xa; i++) + for (int j = 0; j < n_xb; j++) + vab[i + j] += va[i] * vb[j]; + + return xab ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve10cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.h b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.h new file mode 100644 index 00000000..53f93bd0 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve10_cpp.h @@ -0,0 +1,27 @@ + +class Cache{ +public: + typedef double& proxy ; + typedef double* iterator ; + + Cache( iterator data_) : data(data_){} + + inline proxy ref(int i){ return data[i] ; } + inline proxy ref(int i) const { return data[i] ; } + +private: + iterator data ; +} ; + +class Vec { +public: + typedef double& proxy ; + + Vec( double* data_ ) : cache(data_){} + inline proxy operator[]( int i){ return cache.ref(i) ; } + inline proxy operator[]( int i) const { return cache.ref(i) ; } + +private: + Cache cache ; +} ; + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve11_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve11_cpp.cpp new file mode 100644 index 00000000..b1f39da5 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve11_cpp.cpp @@ -0,0 +1,24 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This version uses nona to indicate that xb does not contain any missing +// value. This is the assumption that all other versions do. + +#include +using namespace Rcpp ; + + +RcppExport SEXP convolve11cpp(SEXP a, SEXP b) { + NumericVector xa(a); int n_xa = xa.size() ; + NumericVector xb(b); int n_xb = xb.size() ; + NumericVector xab(n_xa + n_xb - 1,0.0); + + Range r( 0, n_xb-1 ); + for(int i=0; i + +RcppExport SEXP convolve12cpp(SEXP a, SEXP b){ + Rcpp::NumericVector xa(a), xb(b); + int n_xa = xa.size(), n_xb = xb.size(); + Rcpp::NumericVector xab(n_xa + n_xb - 1); + + typedef Rcpp::NumericVector::iterator vec_iterator ; + vec_iterator ia = xa.begin(), ib = xb.begin(); + vec_iterator iab = xab.begin(); + for (int i = 0; i < n_xa; i++) + for (int j = 0; j < n_xb; j++) + iab[i + j] += ia[i] * ib[j]; + + return xab; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve12cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve13_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve13_cpp.cpp new file mode 100644 index 00000000..cff5bc8e --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve13_cpp.cpp @@ -0,0 +1,27 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This is a rewrite of the 'Writing R Extensions' section 5.10.1 example + +#include + +template +T convolve( const T& a, const T& b ){ + int na = a.size() ; int nb = b.size() ; + T out(na + nb - 1); + typename T::iterator iter_a(a.begin()), iter_b(b.begin()), iter_ab( out.begin() ) ; + + for (int i = 0; i < na; i++) + for (int j = 0; j < nb; j++) + iter_ab[i + j] += iter_a[i] * iter_b[j]; + + return out ; +} + + +RcppExport SEXP convolve13cpp(SEXP a, SEXP b){ + return convolve( Rcpp::NumericVector(a), Rcpp::NumericVector(b) ) ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve13cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve14_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve14_cpp.cpp new file mode 100644 index 00000000..0c74ff61 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve14_cpp.cpp @@ -0,0 +1,25 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This is a rewrite of the 'Writing R Extensions' section 5.10.1 example + +#include + +using namespace Rcpp ; +RcppExport SEXP convolve14cpp(SEXP a, SEXP b){ + NumericVector xa(a), xb(b); + int n_xa = xa.size() ; + int n_xb = xb.size() ; + int nab = n_xa + n_xb - 1; + NumericVector xab(nab); + Fast fa(xa), fb(xb), fab(xab) ; + + for (int i = 0; i < n_xa; i++) + for (int j = 0; j < n_xb; j++) + fab[i + j] += fa[i] * fb[j]; + + return xab ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve14cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve2_c.c b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve2_c.c new file mode 100644 index 00000000..5d84038d --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve2_c.c @@ -0,0 +1,28 @@ + +/* This is from 'Writing R Extensions' section 5.10.1 */ + +#include +#include + +SEXP convolve2(SEXP a, SEXP b) +{ + int i, j, na, nb, nab; + double *xa, *xb, *xab; + SEXP ab; + + PROTECT(a = AS_NUMERIC(a)); + PROTECT(b = AS_NUMERIC(b)); + na = LENGTH(a); nb = LENGTH(b); nab = na + nb - 1; + PROTECT(ab = NEW_NUMERIC(nab)); + xa = NUMERIC_POINTER(a); xb = NUMERIC_POINTER(b); + xab = NUMERIC_POINTER(ab); + for(i = 0; i < nab; i++) xab[i] = 0.0; + for(i = 0; i < na; i++) + for(j = 0; j < nb; j++) xab[i + j] += xa[i] * xb[j]; + UNPROTECT(3); + return(ab); +} + +#include "loopmacro.h" +LOOPMACRO_C(convolve2) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve3_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve3_cpp.cpp new file mode 100644 index 00000000..173d921b --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve3_cpp.cpp @@ -0,0 +1,24 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This is a rewrite of the 'Writing R Extensions' section 5.10.1 example + +#include + +RcppExport SEXP convolve3cpp(SEXP a, SEXP b){ + Rcpp::NumericVector xa(a); + Rcpp::NumericVector xb(b); + int n_xa = xa.size() ; + int n_xb = xb.size() ; + int nab = n_xa + n_xb - 1; + Rcpp::NumericVector xab(nab); + + for (int i = 0; i < n_xa; i++) + for (int j = 0; j < n_xb; j++) + xab[i + j] += xa[i] * xb[j]; + + return xab ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve3cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve4_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve4_cpp.cpp new file mode 100644 index 00000000..b853fffd --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve4_cpp.cpp @@ -0,0 +1,29 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This is a rewrite of the 'Writing R Extensions' section 5.10.1 example + +#include + +RcppExport SEXP convolve4cpp(SEXP a, SEXP b) { + Rcpp::NumericVector xa(a); + Rcpp::NumericVector xb(b); + int n_xa = xa.size() ; + int n_xb = xb.size() ; + int nab = n_xa + n_xb - 1; + Rcpp::NumericVector xab(nab,0.0); + + double* pa = xa.begin() ; + double* pb = xb.begin() ; + double* pab = xab.begin() ; + int i,j=0; + for (i = 0; i < n_xa; i++) + for (j = 0; j < n_xb; j++) + pab[i + j] += pa[i] * pb[j]; + + return xab ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve4cpp) + + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve5_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve5_cpp.cpp new file mode 100644 index 00000000..6499ac62 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve5_cpp.cpp @@ -0,0 +1,23 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This is a rewrite of the 'Writing R Extensions' section 5.10.1 example + +#include +using namespace Rcpp ; + + +RcppExport SEXP convolve5cpp(SEXP a, SEXP b) { + NumericVector xa(a); int n_xa = xa.size() ; + NumericVector xb(b); int n_xb = xb.size() ; + NumericVector xab(n_xa + n_xb - 1,0.0); + + Range r( 0, n_xb-1 ); + for(int i=0; i +#include + +SEXP convolve7(SEXP a, SEXP b) +{ + int i, j, na, nb, nab; + SEXP ab; + + PROTECT(a = AS_NUMERIC(a)); + PROTECT(b = AS_NUMERIC(b)); + na = LENGTH(a); nb = LENGTH(b); nab = na + nb - 1; + PROTECT(ab = NEW_NUMERIC(nab)); + for(i = 0; i < nab; i++) REAL(ab)[i] = 0.0; + for(i = 0; i < na; i++) + for(j = 0; j < nb; j++) REAL(ab)[i + j] += REAL(a)[i] * REAL(b)[j]; + UNPROTECT(3); + return(ab); + +} + + +#include "loopmacro.h" +LOOPMACRO_C(convolve7) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve8_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve8_cpp.cpp new file mode 100644 index 00000000..ee7c95ec --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve8_cpp.cpp @@ -0,0 +1,43 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// this version is between the Rcpp_New_ptr and the Rcpp_New_std version +// test elapsed relative user.self sys.self +// 5 Rcpp_New_ptr(REPS, a, b) 0.214 1.000000 0.213 0.001 +// 7 Rcpp_New_std_2(REPS, a, b) 0.223 1.042056 0.216 0.006 +// 4 Rcpp_New_std(REPS, a, b) 0.524 2.448598 0.523 0.001 +// +// so there is some overhead due to creating Vec objects and indexing them +// but much less than when we index the NumericVector + +#include + +class Vec { +public: + Vec( double* data_ ) : data(data_){} + inline double& operator[]( int i){ return data[i] ; } + +private: + double* data ; +} ; + + +RcppExport SEXP convolve8cpp(SEXP a, SEXP b){ + Rcpp::NumericVector xa(a); + Rcpp::NumericVector xb(b); + int n_xa = xa.size() ; + int n_xb = xb.size() ; + int nab = n_xa + n_xb - 1; + Rcpp::NumericVector xab(nab); + + Vec vab(xab.begin()), va(xa.begin()), vb(xb.begin()) ; + + for (int i = 0; i < n_xa; i++) + for (int j = 0; j < n_xb; j++) + vab[i + j] += va[i] * vb[j]; + + return xab ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve8cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve9_cpp.cpp b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve9_cpp.cpp new file mode 100644 index 00000000..7b7d1b74 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/convolve9_cpp.cpp @@ -0,0 +1,61 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// this version expands convolve8_cpp by making Vec mimic the structure of +// NumericVector. It peforms well, so this is is not the structure of +// NumericVector that is the problem. So what is it then ? +// +// could it be because NumericVector is in a different library than +// this code, so that operator[] is not inlined ? +// +// clues: +// - http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka3538.html + +#include + +class Cache{ +public: + typedef double& proxy ; + typedef double* iterator ; + + Cache( iterator data_) : data(data_){} + + inline proxy ref(int i){ return data[i] ; } + inline proxy ref(int i) const { return data[i] ; } + +private: + iterator data ; +} ; + +class Vec { +public: + typedef double& proxy ; + + Vec( double* data_ ) : cache(data_){} + inline proxy operator[]( int i){ return cache.ref(i) ; } + inline proxy operator[]( int i) const { return cache.ref(i) ; } + +private: + Cache cache ; +} ; + + +RcppExport SEXP convolve9cpp(SEXP a, SEXP b){ + Rcpp::NumericVector xa(a); + Rcpp::NumericVector xb(b); + int n_xa = xa.size() ; + int n_xb = xb.size() ; + int nab = n_xa + n_xb - 1; + Rcpp::NumericVector xab(nab); + + Vec vab(xab.begin()), va(xa.begin()), vb(xb.begin()) ; + + for (int i = 0; i < n_xa; i++) + for (int j = 0; j < n_xb; j++) + vab[i + j] += va[i] * vb[j]; + + return xab ; +} + +#include "loopmacro.h" +LOOPMACRO_CPP(convolve9cpp) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/exampleRCode.r b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/exampleRCode.r new file mode 100644 index 00000000..47605ef0 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/exampleRCode.r @@ -0,0 +1,107 @@ +#!/usr/bin/env r + +suppressMessages(require(Rcpp)) +set.seed(42) +n <- 200 +a <- rnorm(n) +b <- rnorm(n) + +## load shared libraries with wrapper code +dyn.load("convolve2_c.so") +dyn.load("convolve3_cpp.so") +dyn.load("convolve4_cpp.so") +dyn.load("convolve5_cpp.so") +dyn.load("convolve7_c.so") + +dyn.load("convolve8_cpp.so") +dyn.load("convolve9_cpp.so") +dyn.load("convolve10_cpp.so") +dyn.load("convolve11_cpp.so") +dyn.load("convolve12_cpp.so" ) +dyn.load("convolve14_cpp.so" ) + +## now run each one once for comparison of results, +## and define test functions + +R_API_optimised <- function(n,a,b) .Call("convolve2__loop", n, a, b) +Rcpp_New_std <- function(n,a,b) .Call("convolve3cpp__loop", n, a, b) +#Rcpp_New_std_inside <- function(n,a,b) .Call("convolve3cpp__loop", n, a, b, PACKAGE = "Rcpp" ) +Rcpp_New_ptr <- function(n,a,b) .Call("convolve4cpp__loop", n, a, b) +Rcpp_New_sugar <- function(n,a,b) .Call("convolve5cpp__loop", n, a, b) +Rcpp_New_sugar_noNA <- function(n,a,b) .Call("convolve11cpp__loop", n, a, b) +R_API_naive <- function(n,a,b) .Call("convolve7__loop", n, a, b) +Rcpp_New_std_2 <- function(n,a,b) .Call("convolve8cpp__loop", n, a, b) +#Rcpp_New_std_3 <- function(n,a,b) .Call("convolve9cpp__loop", n, a, b) +#Rcpp_New_std_4 <- function(n,a,b) .Call("convolve10cpp__loop", n, a, b) +Rcpp_New_std_it <- function(n,a,b) .Call("convolve12cpp__loop", n, a, b ) +Rcpp_New_std_Fast <- function(n,a,b) .Call("convolve14cpp__loop", n, a, b ) + + +v1 <- R_API_optimised(1L, a, b ) +v3 <- Rcpp_New_std(1L, a, b) +v4 <- Rcpp_New_ptr(1L, a, b) +v5 <- Rcpp_New_sugar(1L, a, b ) +v7 <- R_API_naive(1L, a, b) +v11 <- Rcpp_New_sugar_noNA(1L, a, b) + +stopifnot(all.equal(v1, v3)) +stopifnot(all.equal(v1, v4)) +stopifnot(all.equal(v1, v5)) +stopifnot(all.equal(v1, v7)) +stopifnot(all.equal(v1, v11)) + +## load benchmarkin helper function +suppressMessages(library(rbenchmark)) +REPS <- 5000L +bm <- benchmark(R_API_optimised(REPS,a,b), + R_API_naive(REPS,a,b), + Rcpp_New_std(REPS,a,b), +# Rcpp_New_std_inside(REPS,a,b), + Rcpp_New_ptr(REPS,a,b), + Rcpp_New_sugar(REPS,a,b), + Rcpp_New_sugar_noNA(REPS,a,b), + Rcpp_New_std_2(REPS,a,b), +# Rcpp_New_std_3(REPS,a,b), +# Rcpp_New_std_4(REPS,a,b), + Rcpp_New_std_it(REPS,a,b), + Rcpp_New_std_Fast(REPS,a,b), + columns=c("test", "elapsed", "relative", "user.self", "sys.self"), + order="relative", + replications=1) +print(bm) + +cat("All results are equal\n") # as we didn't get stopped +q("no") + + +sizes <- 1:10*100 +REPS <- 5000L +timings <- lapply( sizes, function(size){ + cat( "size = ", size, "..." ) + a <- rnorm(size); b <- rnorm(size) + bm <- benchmark(R_API_optimised(REPS,a,b), + R_API_naive(REPS,a,b), + Rcpp_New_std(REPS,a,b), + Rcpp_New_ptr(REPS,a,b), + Rcpp_New_sugar(REPS,a,b), + Rcpp_New_sugar_noNA(REPS,a,b), + columns=c("test", "elapsed", "relative", "user.self", "sys.self"), + order="relative", + replications=1) + + cat( " done\n" ) + bm +} ) +for( i in seq_along(sizes)){ + timings[[i]]$size <- sizes[i] +} +timings <- do.call( rbind, timings ) + +require( lattice ) +png( "elapsed.png", width = 800, height = 600 ) +xyplot( elapsed ~ size, groups = test, data = timings, auto.key = TRUE, type = "l", lwd = 2 ) +dev.off() +png( "relative.png", width = 800, height = 600 ) +xyplot( relative ~ size, groups = test, data = timings, auto.key = TRUE, type = "l", lwd = 2 ) +dev.off() + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/loopmacro.h b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/loopmacro.h new file mode 100644 index 00000000..c8c36316 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/loopmacro.h @@ -0,0 +1,13 @@ + +#define LOOPMACRO_C(name) \ +SEXP name##__loop(SEXP n_, SEXP a, SEXP b){ \ + int n = INTEGER(n_)[0] ; \ + SEXP res = R_NilValue ; \ + for( int i=0; i +// using namespace Rcpp ; + +SEXP overhead_cpp(SEXP a, SEXP b) { + return R_NilValue ; +} + +extern "C" void R_init_overhead_1(DllInfo *info){ + + R_CallMethodDef callMethods[] = { + {"overhead_cpp", (DL_FUNC) &overhead_cpp, 2}, + {NULL, NULL, 0} + }; + + R_registerRoutines(info, NULL, callMethods, NULL, NULL); +} + diff --git a/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead_2.c b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead_2.c new file mode 100644 index 00000000..e59bab11 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/ConvolveBenchmarks/overhead_2.c @@ -0,0 +1,21 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// This is a rewrite of the 'Writing R Extensions' section 5.10.1 example +#include +#include +#include + +SEXP overhead_c(SEXP a, SEXP b) { + return R_NilValue ; +} + +void R_init_overhead_2(DllInfo *info){ + + R_CallMethodDef callMethods[] = { + {"overhead_c", (DL_FUNC) &overhead_c, 2}, + {NULL, NULL, 0} + }; + + R_registerRoutines(info, NULL, callMethods, NULL, NULL); +} + diff --git a/revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmark.r b/revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmark.r new file mode 100644 index 00000000..f994b359 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmark.r @@ -0,0 +1,54 @@ +#!/usr/bin/env r +# +# Comparison benchmark +# +# This shows how Armadillo improves on the previous version using GNU GSL, +# and how both are doing better than lm.fit() +# +# Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +suppressMessages(library(RcppGSL)) +suppressMessages(library(RcppArmadillo)) + +source("lmArmadillo.R") +source("lmGSL.R") + +set.seed(42) +n <- 5000 +k <- 9 +X <- cbind( rep(1,n), matrix(rnorm(n*k), ncol=k) ) +truecoef <- 1:(k+1) +y <- as.numeric(X %*% truecoef + rnorm(n)) + +N <- 100 + +lmgsl <- lmGSL() +lmarma <- lmArmadillo() + +tlm <- mean(replicate(N, system.time( lmfit <- lm(y ~ X - 1) )["elapsed"]), trim=0.05) +tlmfit <- mean(replicate(N, system.time(lmfitfit <- lm.fit(X, y))["elapsed"]), trim=0.05) +tlmgsl <- mean(replicate(N, system.time(lmgsl(y, X))["elapsed"]), trim=0.05) +tlmarma <- mean(replicate(N, system.time(lmarma(y, X))["elapsed"]), trim=0.05) + +res <- c(tlm, tlmfit, tlmgsl, tlmarma) +data <- data.frame(results=res, ratios=tlm/res) +rownames(data) <- c("lm", "lm.fit", "lmGSL", "lmArma") +cat("For n=", n, " and k=", k, "\n", sep="") +print(t(data)) +print(t(1/data[,1,drop=FALSE])) # regressions per second + diff --git a/revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmarkLongley.r b/revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmarkLongley.r new file mode 100644 index 00000000..9d504477 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/FastLM/benchmarkLongley.r @@ -0,0 +1,55 @@ +#!/usr/bin/env r +# +# Comparison benchmark -- using old and small Longley data set +# +# This shows how Armadillo improves on the previous version using GNU GSL, +# and how both are doing better than lm.fit() +# +# Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +suppressMessages(library(utils)) +suppressMessages(library(Rcpp)) +suppressMessages(library(inline)) +suppressMessages(library(datasets)) + +source("lmArmadillo.R") +source("lmGSL.R") + +data(longley) + +longleydm <- data.matrix(data.frame(intcp=1, longley)) +X <- longleydm[,-8] +y <- as.numeric(longleydm[,8]) + +N <- 1000 + +lmgsl <- lmGSL() +lmarma <- lmArmadillo() + +tlm <- mean(replicate(N, system.time( lmfit <- lm(y ~ X - 1) )["elapsed"]), trim=0.05) +tlmfit <- mean(replicate(N, system.time(lmfitfit <- lm.fit(X, y))["elapsed"]), trim=0.05) +tlmgsl <- mean(replicate(N, system.time(lmgsl(y, X))["elapsed"]), trim=0.05) +tlmarma <- mean(replicate(N, system.time(lmarma(y, X))["elapsed"]), trim=0.05) + +res <- c(tlm, tlmfit, tlmgsl, tlmarma) +data <- data.frame(results=res, ratios=tlm/res) +rownames(data) <- c("lm", "lm.fit", "lmGSL", "lmArma") +cat("For Longley\n") +print(t(data)) +print(t(1/data[,1,drop=FALSE])) # regressions per second + diff --git a/revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaArmadillo.r b/revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaArmadillo.r new file mode 100644 index 00000000..628ebe4f --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaArmadillo.r @@ -0,0 +1,51 @@ +#!/usr/bin/env r +# +# A faster lm() replacement based on Armadillo +# +# This improves on the previous version using GNU GSL +# +# Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +source("lmArmadillo.R") + +checkLmArmadillo <- function(y, X) { + fun <- lmArmadillo() + res <- fun(y, X) + fit <- lm(y ~ X - 1) + rc <- all.equal( as.numeric(res[[1]]), as.numeric(coef(fit))) & + all.equal( as.numeric(res[[2]]), as.numeric(coef(summary(fit))[,2])) + invisible(rc) +} + +timeLmArmadillo <- function(y, X, N) { + fun <- lmArmadillo(); + meantime <- mean(replicate(N, system.time(fun(y, X))["elapsed"]), trim=0.05) +} + +set.seed(42) +n <- 5000 +k <- 9 +X <- cbind( rep(1,n), matrix(rnorm(n*k), ncol=k) ) +truecoef <- 1:(k+1) +y <- as.numeric(X %*% truecoef + rnorm(n)) + +N <- 100 + +stopifnot(checkLmArmadillo(y, X)) +mt <- timeLmArmadillo(y, X, N) +cat("Armadillo: Running", N, "simulations yields (trimmed) mean time", mt, "\n") diff --git a/revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaGSL.r b/revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaGSL.r new file mode 100644 index 00000000..24262f93 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/FastLM/fastLMviaGSL.r @@ -0,0 +1,52 @@ +#!/usr/bin/env r +# +# A faster lm() replacement based on GNU GSL +# +# This first appeared in the 'Intro to HPC tutorials' +# but has been wrapped in inline::cfunction() here +# +# Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +source("lmGSL.R") + +checkLmGSL <- function(y, X) { + fun <- lmGSL() + res <- fun(y, X) + fit <- lm(y ~ X - 1) + rc <- all.equal( res[[1]], as.numeric(coef(fit))) & + all.equal( res[[2]], as.numeric(coef(summary(fit))[,2])) + invisible(rc) +} + +timeLmGSL <- function(y, X, N) { + fun <- lmGSL(); + meantime <- mean(replicate(N, system.time(fun(y, X))["elapsed"]), trim=0.05) +} + +set.seed(42) +n <- 5000 +k <- 9 +X <- cbind( rep(1,n), matrix(rnorm(n*k), ncol=k) ) +truecoef <- 1:(k+1) +y <- as.numeric(X %*% truecoef + rnorm(n)) + +N <- 100 + +stopifnot(checkLmGSL(y, X)) +mt <- timeLmGSL(y, X, N) +cat("GSL: Running", N, "simulations yields (trimmed) mean time", mt, "\n") diff --git a/revdep/library/sprtt/new/Rcpp/examples/FastLM/lmArmadillo.R b/revdep/library/sprtt/new/Rcpp/examples/FastLM/lmArmadillo.R new file mode 100644 index 00000000..35db589d --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/FastLM/lmArmadillo.R @@ -0,0 +1,89 @@ +# +# lm() via Armadillo -- improving on the previous GSL solution +# +# Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +suppressMessages(require(Rcpp)) + +## NOTE: This is the old way to compile Rcpp code inline. +## The code here has left as a historical artifact and tribute to the old way. +## Please use the code under the "new" inline compilation section. + +suppressMessages(require(inline)) + +lmArmadillo_old <- function() { + src <- ' + + Rcpp::NumericVector yr(Ysexp); + Rcpp::NumericVector Xr(Xsexp); + std::vector dims = Xr.attr("dim") ; + int n = dims[0], k = dims[1]; + + arma::mat X(Xr.begin(), n, k, false); // use advanced armadillo constructors + arma::colvec y(yr.begin(), yr.size()); + + arma::colvec coef = solve(X, y); // fit model y ~ X + + arma::colvec resid = y - X*coef; // to compute std. error of the coefficients + double sig2 = arma::as_scalar(trans(resid)*resid)/(n-k); // requires Armadillo 0.8.2 or later + arma::mat covmat = sig2 * arma::inv(arma::trans(X)*X); + + Rcpp::NumericVector coefr(k), stderrestr(k); + for (int i=0; i. + +suppressMessages(require(Rcpp)) + +## NOTE: This is the old way to compile Rcpp code inline. +## The code here has left as a historical artifact and tribute to the old way. +## Please use the code under the "new" inline compilation section. + +suppressMessages(require(inline)) + +lmGSL_old <- function() { + + src <- ' + + Rcpp::NumericVector Yr(Ysexp); + Rcpp::NumericMatrix Xr(Xsexp); + + int i,j,n = Xr.nrow(), k = Xr.ncol(); + double chisq; + + gsl_matrix *X = gsl_matrix_alloc (n, k); + gsl_vector *y = gsl_vector_alloc (n); + gsl_vector *c = gsl_vector_alloc (k); + gsl_matrix *cov = gsl_matrix_alloc (k, k); + for (i = 0; i < n; i++) { + for (j = 0; j < k; j++) + gsl_matrix_set (X, i, j, Xr(i,j)); + gsl_vector_set (y, i, Yr(i)); + } + + gsl_multifit_linear_workspace *work = gsl_multifit_linear_alloc (n, k); + gsl_multifit_linear (X, y, c, cov, &chisq, work); + gsl_multifit_linear_free (work); + + Rcpp::NumericVector coefr(k), stderrestr(k); + for (i = 0; i < k; i++) { + coefr(i) = gsl_vector_get(c,i); + stderrestr(i) = sqrt(gsl_matrix_get(cov,i,i)); + } + gsl_matrix_free (X); + gsl_vector_free (y); + gsl_vector_free (c); + gsl_matrix_free (cov); + + + return Rcpp::List::create( Rcpp::Named( "coef", coefr), + Rcpp::Named( "stderr", stderrestr)); + ' + + ## turn into a function that R can call + ## compileargs redundant on Debian/Ubuntu as gsl headers are found anyway + fun_old <- cxxfunction(signature(Ysexp="numeric", Xsexp="numeric"), + src, + includes="#include ", + plugin="RcppGSL") +} + +## NOTE: Within this section, the new way to compile Rcpp code inline has been +## written. Please use the code next as a template for your own project. + +lmGSL <- function() { + +sourceCpp(code=' +#include +#include +// [[Rcpp::depends(RcppGSL)]] + +// [[Rcpp::export]] +Rcpp::List fun(Rcpp::NumericVector Yr, Rcpp::NumericMatrix Xr){ + + int i, j, n = Xr.nrow(), k = Xr.ncol(); + double chisq; + + RcppGSL::Matrix X(n, k); // allocate a gsl_matrix of dim n, k + RcppGSL::Vector y(n); // allocate a gsl_vector of length n + RcppGSL::Vector c(k); // allocate a gsl_vector of length k + RcppGSL::Matrix cov(k, k); // allocate a gsl_matrix of dim k, k + + for (i = 0; i < n; i++) { + for (j = 0; j < k; j++) + X(i, j) = Xr(i, j); + y[i] = Yr(i); // Note vector requires [] not () + } + + gsl_multifit_linear_workspace *work = gsl_multifit_linear_alloc (n, k); + gsl_multifit_linear (X, y, c, cov, &chisq, work); + gsl_multifit_linear_free (work); + + Rcpp::NumericVector coefr(k), stderrestr(k); + for (i = 0; i < k; i++) { + coefr(i) = c[i]; + stderrestr(i) = sqrt(cov(i,i)); + } + + + return Rcpp::List::create( Rcpp::Named("coef") = coefr, + Rcpp::Named("stderr") = stderrestr); +}') +fun +} diff --git a/revdep/library/sprtt/new/Rcpp/examples/Misc/fibonacci.r b/revdep/library/sprtt/new/Rcpp/examples/Misc/fibonacci.r new file mode 100644 index 00000000..6ae402fc --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/Misc/fibonacci.r @@ -0,0 +1,46 @@ +#!/usr/bin/env r + +## this short example was provided in response to this StackOverflow questions: +## http://stackoverflow.com/questions/6807068/why-is-my-recursive-function-so-slow-in-r +## and illustrates that recursive function calls are a) really expensive in R and b) not +## all expensive in C++ (my machine sees a 700-fold speed increase) and c) the byte +## compiler in R does not help here. + +suppressMessages(library(Rcpp)) + +## byte compiler +require(compiler) + +## A C++ version compile with cppFunction +fibRcpp <- cppFunction( ' +int fibonacci(const int x) { + if (x == 0) return(0); + if (x == 1) return(1); + return (fibonacci(x - 1)) + fibonacci(x - 2); +} +' ) + + +## for comparison, the original (but repaired with 0/1 offsets) +fibR <- function(seq) { + if (seq == 0) return(0); + if (seq == 1) return(1); + return (fibR(seq - 1) + fibR(seq - 2)); +} + +## also use byte-compiled R function +fibRC <- cmpfun(fibR) + +## load rbenchmark to compare +library(rbenchmark) + +N <- 35 ## same parameter as original post +res <- benchmark(fibR(N), + fibRC(N), + fibRcpp(N), + columns=c("test", "replications", "elapsed", + "relative", "user.self", "sys.self"), + order="relative", + replications=1) +print(res) ## show result + diff --git a/revdep/library/sprtt/new/Rcpp/examples/Misc/ifelseLooped.r b/revdep/library/sprtt/new/Rcpp/examples/Misc/ifelseLooped.r new file mode 100644 index 00000000..c63bad83 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/Misc/ifelseLooped.r @@ -0,0 +1,101 @@ +#!/usr/bin/env r +## +## This example goes back to the following StackOverflow questions: +## http://stackoverflow.com/questions/7153586/can-i-vectorize-a-calculation-which-depends-on-previous-elements +## and provides a nice example of how to accelerate path-dependent +## loops which are harder to vectorise. It lead to the following blog +## post: +## http://dirk.eddelbuettel.com/blog/2011/08/23#rcpp_for_path_dependent_loops +## +## Thanks to Josh Ulrich for provided a first nice (R-based) answer on +## StackOverflow and for also catching a small oversight in my posted answer. +## +## Dirk Eddelbuettel, 23 Aug 2011 +## +## Copyrighted but of course GPL'ed + + +library(inline) +library(rbenchmark) +library(compiler) + +fun1 <- function(z) { + for(i in 2:NROW(z)) { + z[i] <- ifelse(z[i-1]==1, 1, 0) + } + z +} +fun1c <- cmpfun(fun1) + + +fun2 <- function(z) { + for(i in 2:NROW(z)) { + z[i] <- if(z[i-1]==1) 1 else 0 + } + z +} +fun2c <- cmpfun(fun2) + + +funRcpp <- cxxfunction(signature(zs="numeric"), plugin="Rcpp", body=" + Rcpp::NumericVector z = Rcpp::NumericVector(zs); + int n = z.size(); + for (int i=1; i + +using namespace Rcpp; + +// [[Rcpp::export]] +double piSugar(const int N) { + NumericVector x = runif(N); + NumericVector y = runif(N); + NumericVector d = sqrt(x*x + y*y); + return 4.0 * sum(d < 1.0) / N; +} diff --git a/revdep/library/sprtt/new/Rcpp/examples/OpenMP/GNUmakefile b/revdep/library/sprtt/new/Rcpp/examples/OpenMP/GNUmakefile new file mode 100644 index 00000000..1e2ac144 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/OpenMP/GNUmakefile @@ -0,0 +1,30 @@ + +## comment this out if you need a different version of R, +## and set set R_HOME accordingly as an environment variable +R_HOME := $(shell R RHOME) + +## include headers and libraries for R +RCPPFLAGS := $(shell $(R_HOME)/bin/R CMD config --cppflags) +RLDFLAGS := $(shell $(R_HOME)/bin/R CMD config --ldflags) + +## include headers and libraries for Rcpp interface classes +RCPPINCL := $(shell echo 'Rcpp:::CxxFlags()' | $(R_HOME)/bin/R --vanilla --slave) +RCPPLIBS := $(shell echo 'Rcpp:::LdFlags()' | $(R_HOME)/bin/R --vanilla --slave) + +## OpenMP +OPENMPFLAGS := -fopenmp + +c_sources := $(wildcard *.c) +c_sharedlibs := $(patsubst %.c,%.o,$(c_sources)) + +cpp_sources := $(wildcard *.cpp) +cpp_sharedlibs := $(patsubst %.cpp,%.o,$(cpp_sources)) + +all : $(c_sharedlibs) $(cpp_sharedlibs) + +%.o : %.c + R CMD SHLIB $< + +%.o : %.cpp + PKG_CPPFLAGS="$(RCPPFLAGS) $(RCPPINCL) $(OPENMPFLAGS)" PKG_LIBS="$(RLDFLAGS) $(RCPPLIBS) $(OPENMPFLAGS)" R CMD SHLIB $< + diff --git a/revdep/library/sprtt/new/Rcpp/examples/OpenMP/OpenMPandInline.r b/revdep/library/sprtt/new/Rcpp/examples/OpenMP/OpenMPandInline.r new file mode 100644 index 00000000..31f6e83e --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/OpenMP/OpenMPandInline.r @@ -0,0 +1,88 @@ +#!/usr/bin/env r + +library(inline) +library(rbenchmark) + +serialCode <- ' + // assign to C++ vector + std::vector x = Rcpp::as >(xs); + size_t n = x.size(); + for (size_t i=0; i x = Rcpp::as >(xs); + std::transform(x.begin(), x.end(), x.begin(), ::log); + return Rcpp::wrap(x); +' +funSerialStdAlg <- cxxfunction(signature(xs="numeric"), body=serialStdAlgCode, plugin="Rcpp") + +## same, but with Rcpp vector just to see if there is measurable difference +serialRcppCode <- ' + // assign to C++ vector + Rcpp::NumericVector x = Rcpp::NumericVector(xs); + size_t n = x.size(); + for (size_t i=0; i x = Rcpp::as >(xs); + size_t n = x.size(); +#pragma omp parallel for shared(x, n) + for (size_t i=0; i + +#ifdef _OPENMP +#include +#endif + +#include + +/** + * Base class for interrupt exceptions thrown when user + * interrupts are detected. + */ +class interrupt_exception : public std::exception { +public: + /** + * Constructor. + * @param[in] message A description of event that + * caused this exception. + */ + interrupt_exception(std::string message) + : detailed_message(message) + {}; + + /** + * Virtual destructor. Needed to avoid "looser throw specification" errors. + */ + virtual ~interrupt_exception() throw() {}; + + /** + * Obtain a description of the exception. + * @return Description. + */ + virtual const char* what() const throw() { + return detailed_message.c_str(); + } + + /** + * String with details on the error. + */ + std::string detailed_message; +}; + +/** + * Do the actual check for an interrupt. + * @attention This method should never be called directly. + * @param[in] dummy Dummy argument. + */ +static inline void check_interrupt_impl(void* /*dummy*/) { + R_CheckUserInterrupt(); +} + +/** + * Call this method to check for user interrupts. + * This is based on the results of a discussion on the + * R-devel mailing list, suggested by Simon Urbanek. + * @attention This method must not be called by any other + * thread than the master thread. If called from within + * an OpenMP parallel for loop, make sure to check + * for omp_get_thread_num()==0 before calling this method! + * @return True, if a user interrupt has been detected. + */ +inline bool check_interrupt() { + return (R_ToplevelExec(check_interrupt_impl, NULL) == FALSE); +} + +/** + * Compute pi using the Leibniz formula + * (a very inefficient approach). + * @param[in] n Number of summands + * @param[in] frequency Check for interrupts after + * every @p frequency loop cycles. + */ +RcppExport SEXP PiLeibniz(SEXP n, SEXP frequency) +{ + BEGIN_RCPP + + // cast parameters + int n_cycles = Rcpp::as(n); + int interrupt_check_frequency = Rcpp::as(frequency); + + // user interrupt flag + bool interrupt = false; + + double pi = 0; +#ifdef _OPENMP +#pragma omp parallel for \ + shared(interrupt_check_frequency, n_cycles, interrupt) \ + reduction(+:pi) +#endif + for (int i=0; i(n); + int thn = as(thin); + + int i,j; + NumericMatrix mat(N, 2); + + RNGScope scope; // Initialize Random number generator. Not needed when Attributes used. + + // The rest of the code follows the R version + double x=0, y=0; + + for (i=0; i + #include + + using namespace Rcpp; // just to be explicit +' + +gslgibbscode <- ' + int N = as(ns); + int thin = as(thns); + int i, j; + gsl_rng *r = gsl_rng_alloc(gsl_rng_mt19937); + double x=0, y=0; + NumericMatrix mat(N, 2); + for (i=0; i. + +## NB This file is mostly historic and predates the unit tests. +## Yet it still provides useful examples -- but the unitTests/ +## for vastly larger coverage + +suppressMessages(library(Rcpp)) +suppressMessages(library(inline)) + +cat("===Doubles\n") +foo <- ' + double d = Rcpp::as(x); + std::cout << "Returning twice the value of " << d << " : "; + return(Rcpp::wrap( 2*d ) ); + ' +funx <- cfunction(signature(x="numeric"), foo, Rcpp=TRUE, verbose=FALSE) +cat(funx(x=2.123), "\n") +cat(funx(x=2), "\n") +##funx(x='2') ## throws as expected +##funx(x=2:3) ## throws as expected + + +cat("\n===Int\n") +foo <- ' + int i = Rcpp::as(x); + std::cout << "Returning twice the value of " << i << " : "; + return(Rcpp::wrap( 2*i ) ); + ' +funx <- cfunction(signature(x="numeric"), foo, Rcpp=TRUE, verbose=FALSE) +cat(funx(x=2), "\n") +cat(funx(x=2.2), "\n") +funx <- cfunction(signature(x="raw"), foo, Rcpp=TRUE, verbose=FALSE) +cat(funx(x=as.raw(2)), "\n") + +cat("\n===String\n") +foo <- ' + std::string s = Rcpp::as(x); + std::cout << "Returning twice the value of " << s << " : "; + return(Rcpp::wrap( s+s ) ); + ' +funx <- cfunction(signature(x="character"), foo, Rcpp=TRUE, verbose=FALSE) +cat(funx(x="abc"), "\n") + +cat("\n===Raw (bytes)\n") +foo <- ' + Rbyte i = Rcpp::as(x) ; + std::cout << "Returning twice the value of " << (int)i << " : "; + return(Rcpp::wrap( (Rbyte)(2*i) ) ); + ' +funx <- cfunction(signature(x="numeric"), foo, Rcpp=TRUE, verbose=FALSE) +cat( funx(x=2), "\n") +funx <- cfunction(signature(x="integer"), foo, Rcpp=TRUE, verbose=FALSE) +cat( funx(x=2L), "\n") +funx <- cfunction(signature(x="raw"), foo, Rcpp=TRUE, verbose=FALSE) +cat( funx(x=as.raw(2)), "\n") + +cat("\n=== logical \n") +foo <- ' +bool b = Rcpp::as(x); +std::cout << "flip " << ( b ? "TRUE" : "FALSE" ) << " : "; +return(Rcpp::wrap( !b )); +' +funx <- cfunction(signature(x="logical"), foo, Rcpp=TRUE, verbose=FALSE) +cat( res <- funx(x=TRUE) , "\n") ; stopifnot( !res ) +cat( res <- funx(x=FALSE), "\n" ) ; stopifnot( res) +funx <- cfunction(signature(x="numeric"), foo, Rcpp=TRUE, verbose=FALSE) +cat( res <- funx(x=2) , "\n") ; stopifnot( !res ) +cat( res <- funx(x=0.0), "\n") ; stopifnot( res) +funx <- cfunction(signature(x="integer"), foo, Rcpp=TRUE, verbose=FALSE) +cat( res <- funx(x=2L), "\n") ; stopifnot( !res ) +cat( res <- funx(x=0L), "\n") ; stopifnot( res) +funx <- cfunction(signature(x="raw"), foo, Rcpp=TRUE, verbose=FALSE) +cat( res <- funx(x=as.raw(2)), "\n") ; stopifnot( !res ) +cat( res <- funx(x=as.raw(0)), "\n") ; stopifnot( res) + +### vectors + +cat("\n===Int Vector via wrap\n") +foo <- ' + std::vector iv = Rcpp::as< std::vector >(x) ; + std::cout << "Returning twice the value of vector : "; + for (size_t i=0; i iv = Rcpp::as< std::vector >(x) ; + std::cout << "Returning twice the value of vector : "; + for (size_t i=0; i iv = Rcpp::as< std::vector >(x) ; + std::cout << "Returning twice the value of vector : "; + for (size_t i=0; i iv = Rcpp::as< std::vector >(x) ; + std::cout << "Returning twice the value of vector : "; + for (size_t i=0; i\n") +foo <- ' +std::vector bv = Rcpp::as< std::vector >(x) ; +std::cout << "Flip the value of vector : "; +for (size_t i=0; i iv = Rcpp::as< std::vector >(x); + std::cout << "Returning twice the value of vector : "; + for (size_t i=0; i\n") +foo <- ' +std::set iv ; +iv.insert( 0 ) ; +iv.insert( 1 ) ; +iv.insert( 0 ) ; +return Rcpp::wrap( iv );' +funx <- cfunction(signature(), foo, Rcpp=TRUE, verbose=FALSE, includes = "#include " ) +print(res <- funx()) +stopifnot( identical( res, 0:1 ) ) + +cat("\n=== set\n") +foo <- ' +std::set ds; +ds.insert( 0.0 ); +ds.insert( 1.0 ); +ds.insert( 0.0 ); +return(Rcpp::wrap( ds )); ' +funx <- cfunction(signature(), foo, Rcpp=TRUE, verbose=FALSE, includes = "#include ") +print( res <- funx() ) +stopifnot( identical( res, as.numeric(0:1))) + +cat("\n=== set\n") +foo <- ' +std::set bs ; +bs.insert( (Rbyte)0 ) ; +bs.insert( (Rbyte)1 ) ; +bs.insert( (Rbyte)0 ) ; +return(Rcpp::wrap( bs )); ' +funx <- cfunction(signature(), foo, Rcpp=TRUE, verbose=FALSE, includes = "#include ") +print( res <- funx() ) +stopifnot( identical( res, as.raw(0:1))) + +cat("\n=== set \n") +foo <- ' +std::set ss ; +ss.insert( "foo" ) ; +ss.insert( "bar" ) ; +ss.insert( "foo" ) ; +return(Rcpp::wrap( ss )); ' +funx <- cfunction(signature(), foo, Rcpp=TRUE, verbose=FALSE, include = "#include " ) +print( res <- funx() ) +stopifnot( identical( res, c("bar","foo")) ) + + +#========= attributes + +funx <- cfunction( + signature(x="data.frame"), ' +std::vector iv = Rcpp::RObject(x).attributeNames(); +return(Rcpp::wrap( iv )); +', Rcpp=TRUE, verbose=FALSE) +res <- funx( iris ) +stopifnot( all( c("names", "row.names", "class" ) %in% res ) ) + +funx <- cfunction(signature(x="data.frame"), ' +bool has_class = Rcpp::RObject(x).hasAttribute( "class" ) ; +return Rcpp::wrap( has_class ) ; +', Rcpp=TRUE, verbose=FALSE) +res <- funx( iris ) +stopifnot( res ) + +funx <- cfunction(signature(x="data.frame"), ' +return Rcpp::RObject(x).attr( "row.names" ) ; +', Rcpp=TRUE, verbose=FALSE) +res <- funx( iris ) +stopifnot( identical(res, 1:150) ) + +#============ NULL +funx <- cfunction(signature(x="ANY"), ' +bool is_null = Rcpp::RObject(x).isNULL() ; +return Rcpp::wrap( is_null ) ; +', Rcpp=TRUE, verbose=FALSE) +res <- funx( iris ) +stopifnot( !res ) +res <- funx( NULL ) +stopifnot( res ) + + + diff --git a/revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineExample.r b/revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineExample.r new file mode 100644 index 00000000..52dd5006 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineExample.r @@ -0,0 +1,47 @@ +#!/usr/bin/env r + +suppressMessages(library(Rcpp)) + +## NOTE: This is the old way to compile Rcpp code inline. +## The code here has left as a historical artifact and tribute to the old way. +## Please use the code under the "new" inline compilation section. + +suppressMessages(library(inline)) + +foo <- ' + IntegerVector vec(10000); // vec parameter viewed as vector of ints. + int i = 0; + for (int a = 0; a < 9; a++) + for (int b = 0; b < 9; b++) + for (int c = 0; c < 9; c++) + for (int d = 0; d < 9; d++) + vec(i++) = a*b - c*d; + + return vec; +' + +funx_old <- cxxfunction(signature(), foo, plugin = "Rcpp" ) + +## NOTE: Within this section, the new way to compile Rcpp code inline has been +## written. Please use the code next as a template for your own project. + +cppFunction('IntegerVector funx(){ + IntegerVector vec(10000); // vec parameter viewed as vector of ints. + int i = 0; + for (int a = 0; a < 9; a++) + for (int b = 0; b < 9; b++) + for (int c = 0; c < 9; c++) + for (int d = 0; d < 9; d++) + vec(i++) = a*b - c*d; + + return vec; +}') + +dd.inline.rcpp <- function() { + res <- funx() + tabulate(res) +} + +print(mean(replicate(100,system.time(dd.inline.rcpp())["elapsed"]),trim=0.05)) + + diff --git a/revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineWithLibsExamples.r b/revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineWithLibsExamples.r new file mode 100644 index 00000000..e4a6faef --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/RcppInline/RcppInlineWithLibsExamples.r @@ -0,0 +1,351 @@ +#!/usr/bin/env r +# +# Copyright (C) 2009 - 2016 Dirk Eddelbuettel and Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +suppressMessages(library(Rcpp)) +suppressMessages(library(RcppGSL)) + +## NOTE: This is the old way to compile Rcpp code inline. +## The code here has left as a historical artifact and tribute to the old way. +## Please use the code under the "new" inline compilation section. + +suppressMessages(library(inline)) + +firstExample_old <- function() { + ## a really simple C program calling three functions from the GSL + gslrng <- ' + gsl_rng *r; + gsl_rng_env_setup(); + double v; + + r = gsl_rng_alloc (gsl_rng_default); + + printf(" generator type: %s\\n", gsl_rng_name (r)); + printf(" seed = %lu\\n", gsl_rng_default_seed); + v = gsl_rng_get (r); + printf(" first value = %.0f\\n", v); + + gsl_rng_free(r); + return R_NilValue; + ' + + ## turn into a function that R can call + ## compileargs redundant on Debian/Ubuntu as gsl headers are found anyway + funx_old <- cxxfunction(signature(), gslrng, + includes="#include ", + plugin="RcppGSL") + + cat("Calling first example\n") + funx_old() + invisible(NULL) +} + +secondExample_old <- function() { + + ## now use Rcpp to pass down a parameter for the seed + gslrng <- ' + int seed = Rcpp::as(par) ; + + gsl_rng *r; + gsl_rng_env_setup(); + double v; + + r = gsl_rng_alloc (gsl_rng_default); + + gsl_rng_set (r, (unsigned long) seed); + v = gsl_rng_get (r); + + #ifndef BeSilent + printf(" generator type: %s\\n", gsl_rng_name (r)); + printf(" seed = %d\\n", seed); + printf(" first value = %.0f\\n", v); + #endif + + gsl_rng_free(r); + return Rcpp::wrap(v) ; + ' + + ## turn into a function that R can call + ## compileargs redundant on Debian/Ubuntu as gsl headers are found anyway + ## use additional define for compile to suppress output + funx_old <- cxxfunction(signature(par="numeric"), gslrng, + includes="#include ", + plugin="RcppGSL") + cat("\n\nCalling second example without -DBeSilent set\n") + print(funx_old(0)) + + + ## now override settings to add -D flag + settings <- getPlugin("RcppGSL") + settings$env$PKG_CPPFLAGS <- paste(settings$PKG_CPPFLAGS, "-DBeSilent") + + funx_old <- cxxfunction(signature(par="numeric"), gslrng, + includes="#include ", + settings=settings) + cat("\n\nCalling second example with -DBeSilent set\n") + print(funx_old(0)) + + invisible(NULL) +} + +thirdExample_old <- function() { + + ## now use Rcpp to pass down a parameter for the seed, and a vector size + gslrng <- ' + int seed = Rcpp::as(s) ; + int len = Rcpp::as(n); + + gsl_rng *r; + gsl_rng_env_setup(); + std::vector v(len); + + r = gsl_rng_alloc (gsl_rng_default); + + gsl_rng_set (r, (unsigned long) seed); + for (int i=0; i(s); + int len = Rcpp::as(n); + + gsl_rng *r; + gsl_rng_env_setup(); + std::vector v(len); + + r = gsl_rng_alloc (gsl_rng_default); + + gsl_rng_set (r, (unsigned long) seed); + for (int i=0; i", + "using namespace Rcpp;", + "using namespace std;"), + plugin="RcppGSL") + cat("\n\nCalling fourth example with seed, length and namespaces\n") + print(funx_old(0, 5)) + + invisible(NULL) +} + +## NOTE: Within this section, the new way to compile Rcpp code inline has been +## written. Please use the code next as a template for your own project. + +firstExample <- function() { + ## a really simple C program calling three functions from the GSL + + sourceCpp(code=' +#include +#include + +// [[Rcpp::depends(RcppGSL)]] + +// [[Rcpp::export]] +SEXP funx(){ + gsl_rng *r; + gsl_rng_env_setup(); + double v; + + r = gsl_rng_alloc (gsl_rng_default); + + printf(" generator type: %s\\n", gsl_rng_name (r)); + printf(" seed = %lu\\n", gsl_rng_default_seed); + v = gsl_rng_get (r); + printf(" first value = %.0f\\n", v); + + gsl_rng_free(r); + return R_NilValue; +}') + + cat("Calling first example\n") + funx() + invisible(NULL) +} + +secondExample <- function() { + + ## now use Rcpp to pass down a parameter for the seed + + ## turn into a function that R can call + ## compileargs redundant on Debian/Ubuntu as gsl headers are found anyway + ## use additional define for compile to suppress output + + gslrng <- ' + #include + #include + + // [[Rcpp::depends(RcppGSL)]] + + // [[Rcpp::export]] + double funx(int seed){ + + gsl_rng *r; + gsl_rng_env_setup(); + double v; + + r = gsl_rng_alloc (gsl_rng_default); + + gsl_rng_set (r, (unsigned long) seed); + v = gsl_rng_get (r); + + #ifndef BeSilent + printf(" generator type: %s\\n", gsl_rng_name (r)); + printf(" seed = %d\\n", seed); + printf(" first value = %.0f\\n", v); + #endif + + gsl_rng_free(r); + return v; + }' + + sourceCpp(code=gslrng, rebuild = TRUE) + + cat("\n\nCalling second example without -DBeSilent set\n") + print(funx(0)) + + + ## now override settings to add -D flag + o = Sys.getenv("PKG_CPPFLAGS") + Sys.setenv("PKG_CPPFLAGS" = paste(o, "-DBeSilent")) + + sourceCpp(code=gslrng, rebuild = TRUE) + + # Restore environment flags + Sys.setenv("PKG_CPPFLAGS" = o ) + + cat("\n\nCalling second example with -DBeSilent set\n") + print(funx(0)) + + invisible(NULL) +} + +thirdExample <- function() { + + ## now use Rcpp to pass down a parameter for the seed, and a vector size + + ## turn into a function that R can call + ## compileargs redundant on Debian/Ubuntu as gsl headers are found anyway + ## use additional define for compile to suppress output + + sourceCpp(code=' + #include + #include + + // [[Rcpp::depends(RcppGSL)]] + + // [[Rcpp::export]] + std::vector funx(int seed, int len){ + + gsl_rng *r; + gsl_rng_env_setup(); + std::vector v(len); + + r = gsl_rng_alloc (gsl_rng_default); + + gsl_rng_set (r, (unsigned long) seed); + for (int i=0; i. + +require(Rcpp) + + +## NOTE: This is the old way to compile Rcpp code inline. +## The code here has left as a historical artifact and tribute to the old way. +## Please use the code under the "new" inline compilation section. + +require(inline) +funx_old <- cxxfunction( + signature(), + 'throw std::range_error("boom"); return R_NilValue ; ', + plugin = "Rcpp" ) + +## NOTE: Within this section, the new way to compile Rcpp code inline has been +## written. Please use the code next as a template for your own project. + +cppFunction(' +SEXP funx(){ + throw std::range_error("boom"); return R_NilValue ; +}') + +tryCatch( funx(), "C++Error" = function(e){ + cat( sprintf( "C++ exception of class '%s' : %s\n", class(e)[1L], e$message ) ) +} ) +# or using a direct handler +tryCatch( funx(), "std::range_error" = function(e){ + cat( sprintf( "C++ exception of class '%s' : %s\n", class(e)[1L], e$message ) ) +} ) +# just to check things carry on +print( rnorm(10) ) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/RcppInline/external_pointer.r b/revdep/library/sprtt/new/Rcpp/examples/RcppInline/external_pointer.r new file mode 100644 index 00000000..2874ba74 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/RcppInline/external_pointer.r @@ -0,0 +1,113 @@ +#!/usr/bin/env r +# +# Copyright (C) 2009 - 2010 Romain Francois +# +# This file is part of Rcpp. +# +# Rcpp is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# Rcpp is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Rcpp. If not, see . + +require(Rcpp) +require(inline) + + +## NOTE: This is the old way to compile Rcpp code inline. +## The code here has left as a historical artifact and tribute to the old way. +## Please use the code under the "new" inline compilation section. + +funx_old <- cxxfunction(signature(), ' + /* creating a pointer to a vector */ + std::vector* v = new std::vector ; + v->push_back( 1 ) ; + v->push_back( 2 ) ; + + /* wrap the pointer as an external pointer */ + /* this automatically protected the external pointer from R garbage + collection until p goes out of scope. */ + Rcpp::XPtr< std::vector > p(v) ; + + /* return it back to R, since p goes out of scope after the return + the external pointer is no more protected by p, but it gets + protected by being on the R side */ + return( p ) ; +', plugin = "Rcpp" ) +xp <- funx_old() +stopifnot( identical( typeof( xp ), "externalptr" ) ) + +# passing the pointer back to C++ +funx_old <- cxxfunction(signature(x = "externalptr" ), ' + /* wrapping x as smart external pointer */ + /* The SEXP based constructor does not protect the SEXP from + garbage collection automatically, it is already protected + because it comes from the R side, however if you want to keep + the Rcpp::XPtr object on the C(++) side + and return something else to R, you need to protect the external + pointer, by using the protect member function */ + Rcpp::XPtr< std::vector > p(x) ; + + /* just return the front of the vector as a SEXP */ + return( Rcpp::wrap( p->front() ) ) ; +', plugin = "Rcpp" ) +front <- funx_old(xp) +stopifnot( identical( front, 1L ) ) + + +## NOTE: Within this section, the new way to compile Rcpp code inline has been +## written. Please use the code next as a template for your own project. + +## Use of the cppFunction() gives the ability to immediately compile embedded +## C++ directly within R without having to worry about header specification or +## Rcpp attributes. + +cppFunction(' +Rcpp::XPtr< std::vector > funx(){ + /* creating a pointer to a vector */ + std::vector* v = new std::vector ; + v->push_back( 1 ) ; + v->push_back( 2 ) ; + + /* wrap the pointer as an external pointer */ + /* this automatically protected the external pointer from R garbage + * collection until p goes out of scope. + */ + Rcpp::XPtr< std::vector > p(v) ; + + /* return it back to R, since p goes out of scope after the return + * the external pointer is no more protected by p, but it gets + * protected by being on the R side + */ + return( p ) ; +}') + +xp <- funx() +stopifnot( identical( typeof( xp ), "externalptr" ) ) + +# passing the pointer back to C++ +cppFunction(' +SEXP funx_pt(Rcpp::XPtr< std::vector > p){ + /* Wrapping x as smart external pointer */ + + /* The SEXP based constructor does not protect the SEXP from + * garbage collection automatically, it is already protected + * because it comes from the R side, however if you want to keep + * the Rcpp::XPtr object on the C(++) side + * and return something else to R, you need to protect the external + * pointer, by using the protect member function + */ + + /* Just return the front of the vector as a SEXP */ + return Rcpp::wrap(p->front()); +}') +front <- funx_pt(xp) +stopifnot( identical( front, 1L ) ) + diff --git a/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timer.h b/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timer.h new file mode 100644 index 00000000..656fc8dd --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timer.h @@ -0,0 +1,55 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- +// +// Timer.h: Rcpp R/C++ interface class library -- simple timer class +// +// Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois +// +// This file is part of Rcpp. +// +// Rcpp is free software: you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 2 of the License, or +// (at your option) any later version. +// +// Rcpp is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Rcpp. If not, see . + + +// Simple timer class based on on ideas in atimer.h / atimer.cxx found a few years ago at +// http://www.cs.uiowa.edu/~sriram/30/fall03/ +// and attributed to Amir Elaguizy while under GPL +// but converted to using gettimeofday/GetSystemTime instead + +#ifndef TIMER_H +#define TIMER_H + +class Timer { +public: + Timer() : sys_time("Sys.time") { Reset(); } + void Start() { start_t = getFractionalSeconds() ; } + void Stop() { + end_t = getFractionalSeconds(); + elapsed = end_t - start_t; // Calculate elapsed time in seconds + cumul += elapsed; + } + void Reset() { end_t = start_t = elapsed = cumul = 0.0; } + double ElapsedTime() { return elapsed; } + double CumulativeTime() { return cumul; } + + +private: + Function sys_time ; + double start_t, end_t, elapsed, cumul; + + double getFractionalSeconds(void) { + return as( sys_time() ) ; + } +}; + +#endif + diff --git a/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timertest.cpp b/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timertest.cpp new file mode 100644 index 00000000..6cf06b27 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/Timertest.cpp @@ -0,0 +1,31 @@ +// -*- mode: c++; compile-command: "g++ -Wall -O3 -o Timertest Timertest.cpp"; c-indent-level: 4; c-basic-offset: 4; tab-width: 8 -*- + +// from http://www.cs.uiowa.edu/~sriram/30/fall03/ + +#include +#include +#include "Timer.h" + +int main() { + Timer test; + + std::cout << "Sleeping 2 seconds" << std::endl; + test.Start(); + sleep(2); + test.Stop(); + std::cout << "Sleep lasted for " << test.ElapsedTime() << " seconds." << std::endl; + std::cout << "Sleeping 1 second" << std::endl; + test.Start(); + sleep(1); + test.Stop(); + std::cout << "Sleep lasted for " << test.ElapsedTime() << " seconds." << std::endl; + std::cout << "Cumulative time is " << test.CumulativeTime() << " seconds." << std::endl; + std::cout << "Reseting" << std::endl; + test.Reset(); + std::cout << "Sleeping 2 seconds" << std::endl; + test.Start(); + sleep(2); + test.Stop(); + std::cout << "Sleep lasted for " << test.ElapsedTime() << " seconds." << std::endl; + std::cout << "Cumulative time is " << test.CumulativeTime() << " seconds." << std::endl; +} diff --git a/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/sugarBenchmarks.R b/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/sugarBenchmarks.R new file mode 100644 index 00000000..27de7d1a --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/examples/SugarPerformance/sugarBenchmarks.R @@ -0,0 +1,226 @@ +#!/usr/bin/env r + +suppressMessages(library(inline)) +suppressMessages(library(Rcpp)) + +benchmark <- function(start = settings$start, + hand.written = settings$hand.written, + sugar = settings$sugar, + expr = settings$expr, + runs = settings$runs, + data = settings$data, + end = settings$end, + inc = settings$inc, + + settings = list( + start = "", hand.written = "", + sugar = "", expr = NULL, + runs = 500, + data = NULL , + end = "", + inc = "" + ) + ) { + +expr <- force(expr) +inc <- force( inc ) + +src <- sprintf( ' + unsigned int runs = as(runss); + Environment e(env) ; + + %s + + Timer timer; + + // approach one + timer.Start(); + for (unsigned int i=0; i(N); + NumericVector numvec(xvec) ; + Function f(fun) ; + for( int i=0; i fx(x), fy(y), fz(z) ; + int n = x.size() ; + for( int i=0; i nx(x), ny(y) ; + NumericVector z = nx * ny ; + return z ; + } +' + + +fx <- cxxfunction( + list( + direct = signature( x_ = "numeric", y_ = "numeric" ), + extractor = signature( x_ = "numeric", y_ = "numeric" ), + sugar_nona = signature( x_ = "numeric", y_ = "numeric" ), + + assign_direct = signature( x_ = "numeric", y_ = "numeric" ), + assign_extractor = signature( x_ = "numeric", y_ = "numeric" ), + assign_sugar_nona = signature( x_ = "numeric", y_ = "numeric" ) + + ) , + list( + direct = ' + SEXP res = R_NilValue ; + for( int j=0; j<1000; j++) + res = direct__( x_, y_ ) ; + return res ; + ', + extractor = ' + SEXP res = R_NilValue ; + for( int j=0; j<1000; j++) + res = extractors__( x_, y_ ) ; + return res ; + ', + sugar_nona = ' + SEXP res = R_NilValue ; + for( int j=0; j<1000; j++) + res = sugar_nona__( x_, y_ ) ; + return res ; + ', + + assign_direct = ' + NumericVector x( x_ ), y( y_ ), z( x.size() ) ; + int n = x.size() ; + for( int j=0; j<1000; j++) + for( int i=0; i( n_ ) ; + NumericVector x(x_), y(y_), z(x.size()) ; + for( int i=0; iRzgouI+>;O@>r4iMZSxDD?&|Hxfm?5DeH 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 literal 0 HcmV?d00001 diff --git a/revdep/library/sprtt/new/Rcpp/help/Rcpp.rdx b/revdep/library/sprtt/new/Rcpp/help/Rcpp.rdx new file mode 100644 index 0000000000000000000000000000000000000000..8ff2be03f91db8f6f8e7e044195fe81819b0f5bb GIT binary patch literal 978 zcmV;@11AmrHD#8f{~&tyNoJylD5@<`QW{5`&n= ziX>@Yf7zW}*W24&e!F)Sqy|BYh!5458t@M)1+6|=LB�vGv6VAMAsOg5ZnblLh2=Sx)2VZKDQik~rG-Jr+cnXjD%*mZ;X`nz=dgZaie(%aFG zTmJwIZ{%!kdyn`$^PVc{y~ezs^cEJFC%&Q^_tUa3Q~Yk`%5{LzH<=en&)5p}h-!lc zy-+kSQK0G=)5A#X=DTgZ!&t*0PISXbLM?n|#k_~UE3Dg%wGlXp z7Y4$yjU2~TpF<}R=5b?gqV_}OqPvL6$QdC+OFFcL$~3h2=7mA zS=DEqC@Q%aX>?SAZri-IW%hyub)ft#Tgw3ge`a6wnqHUXqYv^MV2H9Ryr{Ac0 z!9-ovP`4dJ#&Oi0_f<9SthgL_$r8p%-Yh4qN1l(5CyDk}8wuvoZHJyciB2uc>Tqk@ zrU4i0DyZh$9ig3K;Kq5vw!MH&6tpgC7@BICwla-`OH^Wlu79o>{`APS>~uW}yNSoLD6{7fr8JHGoPgqWbI-;HzVVV8?xTVX7ul1zWAt&|N0B*zp^g(_sc06|L?0Z{=d^Q{^rj@ zpEZ0&thaX05qFH$?FF&k+IK{9=>y`O%m+Rc{jer~6X#99u$cs9TId{(4?S> zps93VfcYb4rI&aqda?=ARN7Okem=nmHLjt?z+sD-=^Eph1|22+AI(ZnHrxpS04zHC Aa{vGU literal 0 HcmV?d00001 diff --git a/revdep/library/sprtt/new/Rcpp/help/aliases.rds b/revdep/library/sprtt/new/Rcpp/help/aliases.rds new file mode 100644 index 0000000000000000000000000000000000000000..b072b92956c8450af7e569d783330691b7de5e23 GIT binary patch literal 671 zcmV;Q0$}|giwFP!000002E9~WZ`v>vO$(H^v;n)99wDowldS zI2XupV#{{Abw7TZoi8vrw3EtS2s!8G`rHqnZ^w?~l$>&D&nZ>ZU#D_+JLGgcoQADOMjcHY7-hKGwe}>MHcpBwIrVl%Rp9{W`4LK>X1IXOH1Pu??PYRf{^+AILv&ZM0}3( zZpmoBZU1_AY+YOL?2(`m$Do(hDeo&_FC{9WHU&MiC(N$d=?%NxL~UXrDRCAPsV;+Y zJH1qz0k=9I`bD2y4pywHcXjjKq~98JL5{W&WK}RIHpB+vFh-bDaSc;H%$KX4S8qC_ zLJOU-+qF5PLhaMd%Q2l%!Mkx6?$TOd zS!?-kF6!p(Flu{wBW;N}{aN5omlL(;oh&H7_Pj?d!cIq8yT z@jIQq%>pQ!ErYTnbw8Sqv*loZdA*t}7B7b5(eM@UH?R5dWwvD2W{T=8w>Fp5`#!7Q zgC*Zt-;kEkKDd$v;8tJEwAqubmU9QXb97qHOAu8`ORIB6&cegWam z@c%M0N4QfXC3Tlnf$yuDZNSe6@WSv?LVIcN&{A3sszINFb--u<-e5Tv6FPv?RHj8~ zOIgY`wAkC>IZ_(@mHY-I1f$dHpeAKm2t81A1FqpFNN&Mrk`_Ka{x@2L75I=?>dYuB zBuqkZ;Ta5JXZZSXw9e{BjATm3U{{Ew fdmNdg9oJh6=R+KvZhsOoiqG#qoyIoUUJ3vJ-jnee literal 0 HcmV?d00001 diff --git a/revdep/library/sprtt/new/Rcpp/html/00Index.html b/revdep/library/sprtt/new/Rcpp/html/00Index.html new file mode 100644 index 00000000..7facf329 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/html/00Index.html @@ -0,0 +1,131 @@ + + +R: Seamless R and C++ Integration + + + +

+

Seamless R and C++ Integration + +

+
+
+[Up] +[Top] +

Documentation for package ‘Rcpp’ version 1.0.10

+ + + +

Help Pages

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rcpp-packageR / C++ interface
$-methodReflection information for an internal c++ class
$-methodc++ internal objects
$-methodRcpp modules
$<--methodc++ internal objects
.DollarNames-methodcompletion
.DollarNames-methodscompletion
areMacrosDefinedEvaluate a C++ Expression
C++Class-classReflection information for an internal c++ class
C++Constructor-classClass "C++Constructor"
C++Field-classClass "C++Field"
C++Function-classClass "C++Function"
C++Object-classc++ internal objects
C++OverloadedMethods-classClass "C++OverloadedMethods"
compileAttributesCompile Rcpp Attributes for a Package
compilerCheckCheck for Minimal (g++) Compiler Version
cppFunctionDefine an R Function with a C++ Implementation
demanglec++ type information
dependsAttributeRcpp::depends Attribute
evalCppEvaluate a C++ Expression
exportAttributeRcpp::export Attribute
exposeClassCreate an Rcpp Module to Expose a C++ Class in R
formals<--methodSet the formal arguments of a C++ function
formals<--methodsSet the formal arguments of a C++ function
getRcppVersionExport the Rcpp (API) Package Version
initialize-methodRcpp modules
interfacesAttributeRcpp::interfaces Attribute
LdFlagsDeprecated Rcpp Linker Flags
loadModuleLoad an Rcpp Module into a Package
loadRcppClassCreate a Class Extending a C++ Class
loadRcppModulesLoads Rcpp modules on package startup
ModuleRetrieves an Rcpp module
Module-classRcpp modules
pluginsAttributeRcpp::plugins Attribute
populatePopulates a namespace or an environment with the content of a module
print.bytesc++ type information
prompt-methodRcpp modules
RcppR / C++ interface
Rcpp-deprecatedDeprecated Functions in the Rcpp Package
Rcpp.package.skeletonCreate a skeleton for a new package depending on Rcpp
Rcpp.plugin.makerFacilitating making package plugins
RcppClass-classCreate a Class Extending a C++ Class
RcppLdFlagsDeprecated Rcpp Linker Flags
RcppUnitTestsRcpp : unit tests results
registerPluginRegister an inline plugin
setRcppClassCreate a Class Extending a C++ Class
show-methodReflection information for an internal c++ class
show-methodClass "C++Function"
show-methodc++ internal objects
show-methodRcpp modules
sizeofc++ type information
sourceCppSource C++ Code from a File or String
+
diff --git a/revdep/library/sprtt/new/Rcpp/html/R.css b/revdep/library/sprtt/new/Rcpp/html/R.css new file mode 100644 index 00000000..c2289098 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/html/R.css @@ -0,0 +1,130 @@ +@media screen { + .container { + padding-right: 10px; + padding-left: 10px; + margin-right: auto; + margin-left: auto; + max-width: 900px; + } +} + +.rimage img { /* from knitr - for examples and demos */ + width: 96%; + margin-left: 2%; +} + +.katex { font-size: 1.1em; } + +code { + color: inherit; + background: inherit; +} + +body { + line-height: 1.4; + background: white; + color: black; +} + +a:link { + background: white; + color: blue; +} + +a:visited { + background: white; + color: rgb(50%, 0%, 50%); +} + +h1 { + background: white; + color: rgb(55%, 55%, 55%); + font-family: monospace; + font-size: 1.4em; /* x-large; */ + text-align: center; +} + +h2 { + background: white; + color: rgb(40%, 40%, 40%); + font-family: monospace; + font-size: 1.2em; /* large; */ + text-align: center; +} + +h3 { + background: white; + color: rgb(40%, 40%, 40%); + font-family: monospace; + font-size: 1.2em; /* large; */ +} + +h4 { + background: white; + color: rgb(40%, 40%, 40%); + font-family: monospace; + font-style: italic; + font-size: 1.2em; /* large; */ +} + +h5 { + background: white; + color: rgb(40%, 40%, 40%); + font-family: monospace; +} + +h6 { + background: white; + color: rgb(40%, 40%, 40%); + font-family: monospace; + font-style: italic; +} + +img.toplogo { + width: 4em; + vertical-align: middle; +} + +img.arrow { + width: 30px; + height: 30px; + border: 0; +} + +span.acronym { + font-size: small; +} + +span.env { + font-family: monospace; +} + +span.file { + font-family: monospace; +} + +span.option{ + font-family: monospace; +} + +span.pkg { + font-weight: bold; +} + +span.samp{ + font-family: monospace; +} + +div.vignettes a:hover { + background: rgb(85%, 85%, 85%); +} + +tr { + vertical-align: top; +} + +span.rlang { + font-family: Courier New, Courier; + color: #666666; +} + diff --git a/revdep/library/sprtt/new/Rcpp/include/Rcpp.h b/revdep/library/sprtt/new/Rcpp/include/Rcpp.h new file mode 100644 index 00000000..e518a70a --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/include/Rcpp.h @@ -0,0 +1,93 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; indent-tabs-mode: nil; -*- +// +// Rcpp.h: R/C++ interface class library +// +// Copyright (C) 2008 - 2009 Dirk Eddelbuettel +// Copyright (C) 2009 - 2015 Dirk Eddelbuettel and Romain Francois +// +// This file is part of Rcpp. +// +// Rcpp is free software: you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 2 of the License, or +// (at your option) any later version. +// +// Rcpp is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Rcpp. If not, see . + +#ifndef Rcpp_hpp +#define Rcpp_hpp + +/* it is important that this comes first */ +#include + +#include + +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include + +#if !defined(RCPP_FORCE_OLD_DATE_DATETIME_VECTORS) + #define RCPP_NEW_DATE_DATETIME_VECTORS 1 +#endif +#include + +#include + +#ifndef RCPP_NO_MODULES +#include +#include +#endif + +#include + +#include + +#ifndef RCPP_NO_SUGAR +#include +#include +#endif + +// wrappers for R API 'scalar' functions +#include + +// this stays at the very end, because it needs to +// 'see' all versions of wrap +#include + +#include +#include + +#include +#endif diff --git a/revdep/library/sprtt/new/Rcpp/include/Rcpp/Benchmark/Timer.h b/revdep/library/sprtt/new/Rcpp/include/Rcpp/Benchmark/Timer.h new file mode 100644 index 00000000..d8e3ea73 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/include/Rcpp/Benchmark/Timer.h @@ -0,0 +1,150 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; indent-tabs-mode: nil; -*- +// +// Timer.h: Rcpp R/C++ interface class library -- Rcpp benchmark utility +// +// Copyright (C) 2012 - 2014 JJ Allaire, Dirk Eddelbuettel and Romain Francois +// +// This file is part of Rcpp. +// +// Rcpp is free software: you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 2 of the License, or +// (at your option) any later version. +// +// Rcpp is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Rcpp. If not, see . + +#ifndef RCPP_BENCHMARH_TIMER_H +#define RCPP_BENCHMARH_TIMER_H + +#include +#include +#include + +#define R_NO_REMAP +#include + +#if defined(_WIN32) + #define WIN32_LEAN_AND_MEAN + #include +#elif defined(__APPLE__) + #include +#elif defined(linux) || defined(__linux) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__GLIBC__) || defined(__GNU__) || defined(__CYGWIN__) + #include +#elif defined(sun) || defined(__sun) || defined(_AIX) + #include +#else /* Unsupported OS */ + #error "Rcpp::Timer not supported by your OS." +#endif + +namespace Rcpp{ + + typedef uint64_t nanotime_t; + +#if defined(_WIN32) + + inline nanotime_t get_nanotime(void) { + LARGE_INTEGER time_var, frequency; + QueryPerformanceCounter(&time_var); + QueryPerformanceFrequency(&frequency); + + /* Convert to nanoseconds */ + return 1.0e9 * time_var.QuadPart / frequency.QuadPart; + } + +#elif defined(__APPLE__) + + inline nanotime_t get_nanotime(void) { + nanotime_t time; + mach_timebase_info_data_t info; + + time = mach_absolute_time(); + mach_timebase_info(&info); + + /* Convert to nanoseconds */ + return time * (info.numer / info.denom); + } + +#elif defined(linux) || defined(__linux) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__GLIBC__) || defined(__GNU__) || defined(__CYGWIN__) + + static const nanotime_t nanoseconds_in_second = static_cast(1000000000.0); + + inline nanotime_t get_nanotime(void) { + struct timespec time_var; + + /* Possible other values we could have used are CLOCK_MONOTONIC, + * which is takes longer to retrieve and CLOCK_PROCESS_CPUTIME_ID + * which, if I understand it correctly, would require the R + * process to be bound to one core. + */ + clock_gettime(CLOCK_REALTIME, &time_var); + + nanotime_t sec = time_var.tv_sec; + nanotime_t nsec = time_var.tv_nsec; + + /* Combine both values to one nanoseconds value */ + return (nanoseconds_in_second * sec) + nsec; + } + +#elif defined(sun) || defined(__sun) || defined(_AIX) + + /* short an sweet! */ + inline nanotime_t get_nanotime(void) { + return gethrtime(); + } + +#endif + + class Timer { + public: + Timer() : data(), start_time( get_nanotime() ){} + Timer(nanotime_t start_time_) : data(), start_time(start_time_){} + + void step( const std::string& name){ + data.push_back(std::make_pair(name, now())); + } + + operator SEXP() const { + size_t n = data.size(); + NumericVector out(n); + CharacterVector names(n); + for (size_t i=0; i get_timers(int n){ + return std::vector( n, Timer() ) ; + } + + inline nanotime_t now() const { + return get_nanotime() ; + } + + inline nanotime_t origin() const { + return start_time ; + } + + private: + typedef std::pair Step; + typedef std::vector Steps; + + Steps data; + const nanotime_t start_time; + }; + +} + +#ifdef FALSE + #undef FALSE +#endif + +#endif diff --git a/revdep/library/sprtt/new/Rcpp/include/Rcpp/DataFrame.h b/revdep/library/sprtt/new/Rcpp/include/Rcpp/DataFrame.h new file mode 100644 index 00000000..b76facf7 --- /dev/null +++ b/revdep/library/sprtt/new/Rcpp/include/Rcpp/DataFrame.h @@ -0,0 +1,195 @@ +// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; indent-tabs-mode: nil; -*- +// +// DataFrame.h: Rcpp R/C++ interface class library -- data frames +// +// Copyright (C) 2010 - 2021 Dirk Eddelbuettel and Romain Francois +// +// This file is part of Rcpp. +// +// Rcpp is free software: you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 2 of the License, or +// (at your option) any later version. +// +// Rcpp is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Rcpp. If not, see . + +#ifndef Rcpp__DataFrame_h +#define Rcpp__DataFrame_h + +namespace Rcpp{ + + namespace internal{ + inline SEXP empty_data_frame(){ + Shield df( Rf_allocVector(VECSXP, 0) ); + Rf_setAttrib(df, R_NamesSymbol, Rf_allocVector(STRSXP, 0)); + Rf_setAttrib(df, R_RowNamesSymbol, Rf_allocVector(INTSXP, 0)); + Rf_setAttrib(df, R_ClassSymbol, Rf_mkString("data.frame")); + return df; + } + } + + template