From 0005f6768fa765b3bba5148711967d58b6013037 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kirill=20M=C3=BCller?= Date: Wed, 26 Jun 2024 15:24:02 +0200 Subject: [PATCH] Extract `join_ptype_common()` (#7029) * Extract `join_ptype_common()` * Move `vec_ptype_finalise()` into `join_ptype_common()` --------- Co-authored-by: Davis Vaughan --- R/join-cols.R | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/R/join-cols.R b/R/join-cols.R index 8f7015dd63..d7c180918c 100644 --- a/R/join-cols.R +++ b/R/join-cols.R @@ -181,6 +181,11 @@ add_suffixes <- function(x, y, suffix) { } join_cast_common <- function(x, y, vars, error_call = caller_env()) { + ptype <- join_ptype_common(x, y, vars, error_call = error_call) + vec_cast_common(x = x, y = y, .to = ptype, .call = error_call) +} + +join_ptype_common <- function(x, y, vars, error_call = caller_env()) { # Explicit `x/y_arg = ""` to avoid auto naming in `cnd$x_arg` ptype <- try_fetch( vec_ptype2(x, y, x_arg = "", y_arg = "", call = error_call), @@ -192,7 +197,7 @@ join_cast_common <- function(x, y, vars, error_call = caller_env()) { # Finalize unspecified columns (#6804) ptype <- vec_ptype_finalise(ptype) - vec_cast_common(x = x, y = y, .to = ptype, .call = error_call) + ptype } rethrow_error_join_incompatible_type <- function(cnd, vars, call) {