vctrs-conditions {vctrs} | R Documentation |
Custom conditions for vctrs package
Description
These functions are called for their side effect of raising errors and warnings. These conditions have custom classes and structures to make testing easier.
Usage
stop_incompatible_type(
x,
y,
...,
x_arg,
y_arg,
action = c("combine", "convert"),
details = NULL,
message = NULL,
class = NULL,
call = caller_env()
)
stop_incompatible_cast(
x,
to,
...,
x_arg,
to_arg,
details = NULL,
message = NULL,
class = NULL,
call = caller_env()
)
stop_incompatible_op(
op,
x,
y,
details = NULL,
...,
message = NULL,
class = NULL,
call = caller_env()
)
stop_incompatible_size(
x,
y,
x_size,
y_size,
...,
x_arg,
y_arg,
details = NULL,
message = NULL,
class = NULL,
call = caller_env()
)
allow_lossy_cast(expr, x_ptype = NULL, to_ptype = NULL)
Arguments
x , y , to |
Vectors |
... , class |
Only use these fields when creating a subclass. |
x_arg , y_arg , to_arg |
Argument names for |
action |
An option to customize the incompatible type message depending
on the context. Errors thrown from |
details |
Any additional human readable details. |
message |
An overriding message for the error. |
call |
The execution environment of a currently
running function, e.g. |
x_ptype , to_ptype |
Suppress only the casting errors where |
Value
stop_incompatible_*()
unconditionally raise an error of class
"vctrs_error_incompatible_*"
and "vctrs_error_incompatible"
.
Examples
# Most of the time, `maybe_lossy_cast()` returns its input normally:
maybe_lossy_cast(
c("foo", "bar"),
NA,
"",
lossy = c(FALSE, FALSE),
x_arg = "",
to_arg = ""
)
# If `lossy` has any `TRUE`, an error is thrown:
try(maybe_lossy_cast(
c("foo", "bar"),
NA,
"",
lossy = c(FALSE, TRUE),
x_arg = "",
to_arg = ""
))
# Unless lossy casts are allowed:
allow_lossy_cast(
maybe_lossy_cast(
c("foo", "bar"),
NA,
"",
lossy = c(FALSE, TRUE),
x_arg = "",
to_arg = ""
)
)