Has anyone written a complete conversion of R
types to q
atomic types?
Something like:
as.qsymbol <- function(x) UseMethod("as.qsymbol")
as.qboolean <- function(x) UseMethod("as.qboolean")
as.qsymbol.character <- function(x)
structure(paste0('`$("',paste0(paste0(x,collapse = '";"'), '")')), class="qsymbol")
as.qboolean.logical <- function(x)
structure(ifelse(x==TRUE,"1b","0b"), class="qboolean")
Allowing to write
as.qboolean(c(TRUE, FALSE))
# [1] "1b" "0b"
# attr(,"class")
# [1] "qboolean"
as.qsymbol(c("foo", "bar baz"))
# [1] "`$(\"foo\";\"bar baz\")"
# attr(,"class")
# [1] "qsymbol"
Or even more generic autodetection:
as.qtype <- function(x) {
if(class(x) %in% "logical") return(as.qboolean(x))
if(class(x) %in% "numeric")
....}