An arrayish value is anything that represents an AnvlArray
or can be converted to one.
Specifically, these values are arrayish:
AnvlArray: a concrete array holding data on a device.GraphBox: the representation of an array during tracing, e.g. inside ajit()ted function.R objects:
numeric(1)andlogical(1)which represent scalars.numericandlogicalR arrays.
Use is_arrayish() to check whether a value is arrayish.
Examples
# AnvlArray objects are arrayish
is_arrayish(nv_array(1:4))
#> [1] TRUE
# R arrays and literals are arrayish by default
is_arrayish(array(1:4), convert_ok = TRUE)
#> [1] TRUE
is_arrayish(array(1:4), convert_ok = FALSE)
#> [1] FALSE
# length 1 vectors
is_arrayish(1.5, convert_ok = FALSE)
#> [1] FALSE
is_arrayish(1.5, convert_ok = TRUE)
#> [1] TRUE