df_ptype2() and df_cast() are the two functions you need to
call from vec_ptype2() and vec_cast() methods for data frame
subclasses. See ?howto-faq-coercion-data-frame.
Their main job is to determine the common type of two data frames,
adding and coercing columns as needed, or throwing an incompatible
type error when the columns are not compatible.
df_ptype2(x, y, ..., x_arg = "", y_arg = "")df_cast(x, to, ..., x_arg = "", to_arg = "")
tib_ptype2(x, y, ..., x_arg = "", y_arg = "")
tib_cast(x, to, ..., x_arg = "", to_arg = "")
Subclasses of data frame.
If you call df_ptype2() or df_cast() from a
vec_ptype2() or vec_cast() method, you must forward the dots
passed to your method on to df_ptype2() or df_cast().
Argument names for x and y. These are used
in error messages to inform the user about the locations of
incompatible types (see stop_incompatible_type()).
Argument names for x and y. These are used
in error messages to inform the user about the locations of
incompatible types (see stop_incompatible_type()).
Argument names for x and to. These are used
in error messages to inform the user about the locations of
incompatible types (see stop_incompatible_type()).
When x and y are not compatible, an error of class
vctrs_error_incompatible_type is thrown.
When x and y are compatible, df_ptype2() returns the common
type as a bare data frame. tib_ptype2() returns the common type
as a bare tibble.