r - Documentation about Rinternals's "VECTOR_SEXPREC" -


in rinternals.h, vector_sexprec struct defined as:

typedef struct vector_sexprec {     sexprec_header;     struct vecsxp_struct vecsxp; } vector_sexprec, *vecsexp;   struct vecsxp_struct {     r_len_t length;     r_len_t truelength; };  #define sexprec_header \     struct sxpinfo_struct sxpinfo; \     struct sexprec *attrib; \     struct sexprec *gengc_next_node, *gengc_prev_node  typedef union { vector_sexprec s; double align; } sexprec_align; 

and said 2 last pointers in sexprec_header "used maintain colector's linked list structures". unlike sexprec struct, node data seems represented u union member of struct, in 1 can't see of it's members represent 'node data'.

the dataptr(x) (which data access macro) defined as:

#define dataptr(x)  (((sexprec_align *) (x)) + 1) 

where seems data correspond pointer following x, don't understand how work. there documentation explained? (i've searched in r internals haven't found )

thanks.

the aptly named r internals manual discusses sexp objects in section 1.1.


Comments

Popular posts from this blog

javascript - Karma not able to start PhantomJS on Windows - Error: spawn UNKNOWN -

c# - Display ASPX Popup control in RowDeleteing Event (ASPX Gridview) -

Nuget pack csproj using nuspec -