# `vec_assign()` requires recyclable value Code (expect_error(vec_assign(1:3, 1:3, 1:2), class = "vctrs_error_recycle_incompatible_size") ) Output <error/vctrs_error_incompatible_size> Error in `vec_assign()`: ! Can't recycle input of size 2 to size 3. # logical subscripts must match size of indexed vector Code (expect_error(vec_assign(1:2, c(TRUE, FALSE, TRUE), 5), class = "vctrs_error_subscript_size") ) Output <error/vctrs_error_subscript_size> Error: ! Can't assign elements. x Logical subscript must be size 1 or 2, not 3. --- Code (expect_error(vec_assign(mtcars, c(TRUE, FALSE), mtcars[1, ]), class = "vctrs_error_subscript_size") ) Output <error/vctrs_error_subscript_size> Error: ! Can't assign elements. x Logical subscript must be size 1 or 32, not 2. # must assign existing elements Code (expect_error(vec_assign(1:3, 5, 10), class = "vctrs_error_subscript_oob")) Output <error/vctrs_error_subscript_oob> Error: ! Can't assign to elements past the end. i Location 5 doesn't exist. i There are only 3 elements. Code (expect_error(vec_assign(1:3, "foo", 10), "unnamed vector")) Output <error/rlang_error> Error in `vec_assign()`: ! Can't use character names to index an unnamed vector. Code (expect_error(vec_slice(letters, -100) <- "foo", class = "vctrs_error_subscript_oob") ) Output <error/vctrs_error_subscript_oob> Error: ! Can't negate elements past the end. i Location 100 doesn't exist. i There are only 26 elements. Code (expect_error(vec_assign(set_names(letters), "foo", "bar"), class = "vctrs_error_subscript_oob") ) Output <error/vctrs_error_subscript_oob> Error: ! Can't assign to elements that don't exist. x Element `foo` doesn't exist. # must assign with proper negative locations Code (expect_error(vec_assign(1:3, c(-1, 1), 1:2), class = "vctrs_error_subscript_type") ) Output <error/vctrs_error_subscript_type> Error: ! Can't assign elements. x Negative and positive locations can't be mixed. i Subscript has a positive value at location 2. Code (expect_error(vec_assign(1:3, c(-1, NA), 1:2), class = "vctrs_error_subscript_type") ) Output <error/vctrs_error_subscript_type> Error: ! Can't assign elements. x Negative locations can't have missing values. i Subscript has a missing value at location 2. # `vec_assign()` error args can be overridden Code (expect_error(vec_assign(1:2, 1L, "x", x_arg = "foo", value_arg = "bar"), class = "vctrs_error_incompatible_type")) Output <error/vctrs_error_cast> Error in `vec_assign()`: ! Can't convert `bar` <character> to match type of `foo` <integer>. Code (expect_error(vec_assign(1:2, 1L, 1:2, value_arg = "bar"), class = "vctrs_error_recycle_incompatible_size") ) Output <error/vctrs_error_incompatible_size> Error in `vec_assign()`: ! Can't recycle `bar` (size 2) to size 1.
Generated by dwww version 1.15 on Sat May 18 09:46:02 CEST 2024.