Nothing
knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) knitr::knit_engines$set(callme = callme:::callme_engine) library(callme)
```{css, echo=FALSE} .callme { background-color: #E3F2FD; } pre.callme span { background-color: #E3F2FD; }
## SEXP objects All functions callable from R must return a `SEXP`, and only take arguments which are of type `SEXP` (or just `void` if there are no arguments). The `SEXP` type is an `S-Expression`. Every value in R is an `SEXP`, and there is information stored within the type to indicate what data is stored within it. The `TYPEOF()` macro and `type2char()` function within C will be useful to identify what sort of data is in the SEXP. ## Listing of all SEXP types The full list of `SEXP` types are in [Rinternals.h](https://github.com/wch/r-source/blob/trunk/src/include/Rinternals.h)
/ 11 and 12 were factors and ordered factors in the 1990s /
Used in specifying types for symbol registration to mean anything is okay */
/ used for detecting PROTECT issues in memory.c /
## Code example: Print the SEXP type of an object ```{callme} #| invisible = TRUE SEXP what_sexp_is_this(SEXP x) { Rprintf("SEXPTYPE: %i = %s\n", TYPEOF(x), type2char(TYPEOF(x))); return R_NilValue; }
what_sexp_is_this(1L) what_sexp_is_this(TRUE) what_sexp_is_this(c(1.1, 2.2)) what_sexp_is_this(list(1, 2, 3)) what_sexp_is_this("hello") what_sexp_is_this(mtcars) what_sexp_is_this(mean)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.