diff --git a/R/interlaced.R b/R/interlaced.R index 44adfe1..4bfdf70 100644 --- a/R/interlaced.R +++ b/R/interlaced.R @@ -465,7 +465,7 @@ vec_proxy_order.interlacer_interlaced <- function(x, ...) { # Subsetting -------------------------------------------------------------- #' @export -`[.interlacer_interlaced` <- function(x, i, ...) { +`[.interlacer_interlaced` <- function(x, i, ..., drop) { if (!missing(...)) { cli_abort("Can't index interlaced vectors on dimensions greater than 1.") } diff --git a/tests/testthat/test-interlaced.R b/tests/testthat/test-interlaced.R index fd809cb..3925cae 100644 --- a/tests/testthat/test-interlaced.R +++ b/tests/testthat/test-interlaced.R @@ -125,6 +125,10 @@ test_that("indexing operates on underlying channels", { # multidimensional indexing errors expect_error(foo[1, 2]) expect_error(foo[[1, 2]]) + + # indexing with drop works + expect_equal(foo[, drop = TRUE], foo) + expect_equal(foo[, drop = FALSE], foo) }) test_that("indexing assignment casts & operates on underlying channels", {