R/class_vector.R

Defines functions value_produce_aggregate.tar_vector value_produce_slice.tar_vector value_count_slices.tar_vector vector_new

vector_new <- function(object = NULL) {
  enclass(environment(), c("tar_vector", "tar_value"))
}

#' @export
value_count_slices.tar_vector <- function(value) {
  vctrs::vec_size(value$object)
}

#' @export
value_produce_slice.tar_vector <- function(value, index) { # nolint
  vctrs::vec_slice(x = value$object, i = index)
}

#' @export
value_produce_aggregate.tar_vector <- function(value, objects) { # nolint
  objects$.name_spec <- "{outer}_{inner}"
  do.call(vctrs::vec_c, objects)
}
wlandau/targets documentation built on May 1, 2024, 7:27 p.m.