R/util.R

Defines functions assertArrayList assertArray trimVector padVector

padVector <- function(v, len, padding = 1){
    if(length(v) >= len){
        return(v)
    }
    if(is.null(padding)){
        padding <- list(NULL)
    }
    w <- rep(padding, len - length(v))
    v <- c(v, w)
    return(v)
}

trimVector <- function(v, padding = 1){
    while(length(v) > 0 && v[length(v)] == padding){
        v <- v[-length(v)]
    }
    return(v)
}

assertArray <- function(x){
    if(is.array(x)){
        x
    } else if(is.vector(x)){
        as.mColVector(x)
    } else {
        as.array(x)
    }
}

assertArrayList <- function(..., arrays=list()){
    arrays <- c(list(...), arrays)
    arrays <- lapply(arrays, assertArray)
    return(arrays)
}

Try the implicitExpansion package in your browser

Any scripts or data that you put into this service are public.

implicitExpansion documentation built on Oct. 3, 2022, 1:05 a.m.