From 94d5e7832555294448669cd210dfea3684f53ea5 Mon Sep 17 00:00:00 2001 From: Brock Date: Wed, 11 Jun 2025 16:58:58 +0200 Subject: [PATCH] enhancement to current cpp option code --- R/cpp_opts.R | 8 +++----- R/model.R | 8 +------- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/R/cpp_opts.R b/R/cpp_opts.R index 3626f2e2..45c8c309 100644 --- a/R/cpp_opts.R +++ b/R/cpp_opts.R @@ -64,13 +64,11 @@ model_compile_info <- function(exe_file, version) { if (!is.na(as.logical(val))) { val <- as.logical(val) } - info[[toupper(key_val[1])]] <- val + if (!is.logical(val) || isTRUE(val)) { + info[[tolower(key_val[1])]] <- val + } } } - info[["STAN_VERSION"]] <- paste0(info[["STAN_VERSION_MAJOR"]], ".", info[["STAN_VERSION_MINOR"]], ".", info[["STAN_VERSION_PATCH"]]) - info[["STAN_VERSION_MAJOR"]] <- NULL - info[["STAN_VERSION_MINOR"]] <- NULL - info[["STAN_VERSION_PATCH"]] <- NULL } } info diff --git a/R/model.R b/R/model.R index 1fe14615..b719f3a6 100644 --- a/R/model.R +++ b/R/model.R @@ -279,13 +279,7 @@ CmdStanModel <- R6::R6Class( # as the version the model was compiled with private$cmdstan_version_ <- cmdstan_version() if (length(self$exe_file()) > 0 && file.exists(self$exe_file())) { - cpp_options <- model_compile_info(self$exe_file(), self$cmdstan_version()) - for (cpp_option_name in names(cpp_options)) { - if (cpp_option_name != "stan_version" && - (!is.logical(cpp_options[[cpp_option_name]]) || isTRUE(cpp_options[[cpp_option_name]]))) { - private$cpp_options_[[cpp_option_name]] <- cpp_options[[cpp_option_name]] - } - } + private$cpp_options_ <- model_compile_info(self$exe_file(), self$cmdstan_version()) } invisible(self) },