R/16-bit.R

Defines functions is_uint16_vec is_int16_vec is_hex16_vec

Documented in is_hex16_vec is_int16_vec is_uint16_vec

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#' @rdname is_raw_vec
#' @export
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
is_uint16_vec <- function(x) {
  is.integer(x) &&
    all(x >= 0L) &&
    all(x < 65536L)
}


#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#' @rdname is_raw_vec
#' @export
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
is_int16_vec <- function(x) {
  is.integer(x) &&
    all(x >= -32768L) &&
    all(x <=  32767L)
}

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#' @rdname is_raw_vec
#' @export
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
is_hex16_vec <- function(x) {
  is.character(x) &&
    all(nchar(x) <= 4L) &&
    all(grepl('^[0-9a-fA-F]+$', x))
}
coolbutuseless/minitypes documentation built on May 27, 2019, 9:55 a.m.