# `haystacks` must be castable to `needles` Code vec_case_match(1L, haystacks = list(1.5), values = list(2)) Condition Error in `vec_case_match()`: ! Can't convert from `haystacks[[1]]` to due to loss of precision. * Locations: 1 # `ptype` overrides `values` common type Code vec_case_match(1:2, haystacks = list(1), values = list(1.5), ptype = integer()) Condition Error in `vec_case_match()`: ! Can't convert from `values[[1]]` to due to loss of precision. * Locations: 1 # `default` respects `ptype` Code vec_case_match(needles = 1, haystacks = list(1), values = list(2L), default = 1.5, ptype = integer()) Condition Error in `vec_case_match()`: ! Can't convert from `default` to due to loss of precision. * Locations: 1 # `NULL` values in `haystacks` and `values` are not dropped Code vec_case_match(1:2, list(1, NULL, 2), list("a", NULL, "b")) Condition Error in `vec_case_match()`: ! `haystacks[[2]]` must be a vector, not `NULL`. --- Code vec_case_match(1:2, list(1, NULL, 2), list("a", "a", "b")) Condition Error in `vec_case_match()`: ! `haystacks[[2]]` must be a vector, not `NULL`. --- Code vec_case_match(1:2, list(1, 1, 2), list("a", NULL, "b")) Condition Error in `vec_case_match()`: ! `values[[2]]` must be a vector, not `NULL`. # size of `needles` is maintained Code vec_case_match(1, haystacks = list(1), values = list(1:2)) Condition Error in `vec_case_match()`: ! `values[[1]]` must have size 1, not size 2. # requires at least one condition Code vec_case_match(1, haystacks = list(), values = list()) Condition Error in `vec_case_match()`: ! At least one condition must be supplied. # input must be a vector Code vec_case_match(environment(), haystacks = list(environment()), values = list(1)) Condition Error in `vec_case_match()`: ! `needles` must be a vector, not an environment. # `haystacks` must be a list Code vec_case_match(1, haystacks = 1, values = list(2)) Condition Error in `vec_case_match()`: ! `haystacks` must be a list, not the number 1. # `values` must be a list Code vec_case_match(1, haystacks = list(1), values = 2) Condition Error in `vec_case_match()`: ! `values` must be a list, not the number 2. # `needles_arg` is respected Code vec_case_match(needles = environment(), haystacks = list(environment()), values = list(1), needles_arg = "foo") Condition Error in `vec_case_match()`: ! `foo` must be a vector, not an environment. --- Code vec_case_match(needles = environment(), haystacks = list(environment()), values = list(1), needles_arg = "") Condition Error in `vec_case_match()`: ! Input must be a vector, not an environment. # `haystacks_arg` is respected Code vec_case_match(needles = 1, haystacks = 1, values = list(1), haystacks_arg = "foo") Condition Error in `vec_case_match()`: ! `foo` must be a list, not the number 1. --- Code vec_case_match(needles = 1, haystacks = 1, values = list(1), haystacks_arg = "") Condition Error in `vec_case_match()`: ! Input must be a list, not the number 1. --- Code vec_case_match(needles = 1, haystacks = list(a = "x"), values = list(1), haystacks_arg = "foo") Condition Error in `vec_case_match()`: ! Can't convert `foo$a` to . --- Code vec_case_match(needles = 1, haystacks = list("x"), values = list(1), haystacks_arg = "") Condition Error in `vec_case_match()`: ! Can't convert `..1` to . # `values_arg` is respected Code vec_case_match(needles = 1, haystacks = list(1, 2), values = list("x", b = 1), values_arg = "foo") Condition Error in `vec_case_match()`: ! Can't combine `foo[[1]]` and `foo$b` . --- Code vec_case_match(needles = 1, haystacks = list(1, 2), values = list("x", b = 1), values_arg = "") Condition Error in `vec_case_match()`: ! Can't combine `..1` and `b` . # `default_arg` is respected Code vec_case_match(needles = 1, haystacks = list(1), values = list(2L), default = 1.5, default_arg = "foo", ptype = integer()) Condition Error in `vec_case_match()`: ! Can't convert from `foo` to due to loss of precision. * Locations: 1 --- Code vec_case_match(needles = 1, haystacks = list(1), values = list(2L), default = 1.5, default_arg = "", ptype = integer()) Condition Error in `vec_case_match()`: ! Can't convert from to due to loss of precision. * Locations: 1