Skip to content

Commit 9d3c589

Browse files
committed
Fix RecordArgs
1 parent 9b7337f commit 9d3c589

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

R/General_RecordArgs.R

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ RecordArgs <- function(ExportPath = NULL, call = NULL, env = NULL) {
189189

190190
# Identify which arguments have identical unevaluated and evaluated values
191191
# - Calls (e.g., a + b) are always different
192-
# - Symbols (e.g., i in loops) are treated as matching their evaluated scalar
192+
# - Symbols (e.g., i in loops) match their evaluated scalar
193193
# - Scalars and defaults are compared directly
194194
same_values <- purrr::map2_lgl(
195195
# Coerce pairlist to list for purrr compatibility
@@ -199,7 +199,7 @@ RecordArgs <- function(ExportPath = NULL, call = NULL, env = NULL) {
199199
# Calls always differ from evaluated
200200
if (is.call(u)) return(FALSE)
201201
# Symbols match their evaluated value
202-
if (is.symbol(u)) return(identical(e, e))
202+
if (is.symbol(u)) return(identical(u, e))
203203
# Direct comparison for scalars and defaults
204204
identical(u, e)
205205
})
@@ -281,10 +281,18 @@ RecordArgs <- function(ExportPath = NULL, call = NULL, env = NULL) {
281281

282282
# Combine all values into a named list for tibble construction
283283
tibble_data <- c(
284-
# Unevaluated differing values
285-
stats::setNames(uneval_values[diff_cols], uneval_cols),
286-
# Evaluated differing values
287-
stats::setNames(eval_values[diff_cols], eval_cols),
284+
# Unevaluated differing values, only if diff_cols is non-empty
285+
if (length(diff_cols) > 0) {
286+
stats::setNames(uneval_values[diff_cols], uneval_cols)
287+
} else {
288+
NULL
289+
},
290+
# Evaluated differing values, only if diff_cols is non-empty
291+
if (length(diff_cols) > 0) {
292+
stats::setNames(eval_values[diff_cols], eval_cols)
293+
} else {
294+
NULL
295+
},
288296
# Single columns for matching values
289297
stats::setNames(eval_values[single_cols], single_cols))
290298

0 commit comments

Comments
 (0)