| 
    rds2cpp
    
   C++ library for parsing RDS files 
   | 
 
Parse an RDS file in C++. More...
Classes | |
| struct | AtomicVector | 
| Vector of some atomic type.  More... | |
| struct | Attributes | 
| Attribute names and values.  More... | |
| struct | BuiltInFunction | 
| Built-in function.  More... | |
| struct | Environment | 
| An R environment.  More... | |
| struct | EnvironmentIndex | 
| Reference to an environment.  More... | |
| struct | ExpressionVector | 
| Expression vector.  More... | |
| struct | ExternalPointerIndex | 
| Reference to an external pointer.  More... | |
| struct | GenericVector | 
| Generic vector, i.e., an ordinary R list.  More... | |
| struct | LanguageObject | 
| Language object, i.e., a function call.  More... | |
| struct | Null | 
R's NULL value.  More... | |
| struct | PairList | 
| Pairlist, i.e., a linked list.  More... | |
| struct | ParseRdsOptions | 
Options for parse_rds().  More... | |
| struct | RdsFile | 
| Contents of the parsed RDS file.  More... | |
| struct | RObject | 
| Virtual class for all unserialized R objects.  More... | |
| struct | S4Object | 
| S4 object.  More... | |
| struct | StringVector | 
| String vector.  More... | |
| struct | Symbol | 
| An R symbol.  More... | |
| struct | SymbolIndex | 
| Reference to a language symbol.  More... | |
Typedefs | |
| typedef AtomicVector< int32_t, SEXPType::INT > | IntegerVector | 
| Integer vector.  | |
| typedef AtomicVector< int32_t, SEXPType::LGL > | LogicalVector | 
| Logical vector.  | |
| typedef AtomicVector< double, SEXPType::REAL > | DoubleVector | 
| Double-precision vector.  | |
| typedef AtomicVector< unsigned char, SEXPType::RAW > | RawVector | 
| Raw vector.  | |
| typedef AtomicVector< std::complex< double >, SEXPType::CPLX > | ComplexVector | 
| Complex vector.  | |
| typedef RdsFile | Parsed | 
Enumerations | |
| enum class | StringEncoding : unsigned char { NONE , LATIN1 , UTF8 , ASCII } | 
| enum class | SEXPType : unsigned char {  NIL = 0 , SYM = 1 , LIST = 2 , CLO = 3 , ENV = 4 , PROM = 5 , LANG = 6 , SPECIAL = 7 , BUILTIN = 8 , CHAR = 9 , LGL = 10 , INT = 13 , REAL = 14 , CPLX = 15 , STR = 16 , DOT = 17 , ANY = 18 , VEC = 19 , EXPR = 20 , BCODE = 21 , EXTPTR = 22 , WEAKREF = 23 , RAW = 24 , S4 = 25 , REF = 255 , NILVALUE_ = 254 , GLOBALENV_ = 253 , UNBOUNDVALUE_ = 252 , MISSINGARG_ = 251 , BASENAMESPACE_ = 250 , NAMESPACE = 249 , PACKAGE = 248 , PERSIST = 247 , CLASSREF = 246 , GENERICREF = 245 , BCREPDEF = 244 , BCREPREF = 243 , EMPTYENV_ = 242 , BASEENV_ = 241 , ATTRLANG = 240 , ATTRLIST = 239 , ALTREP_ = 238 }  | 
Functions | |
| template<class Reader_ > | |
| RdsFile | parse_rds (Reader_ &reader, const ParseRdsOptions &options) | 
| RdsFile | parse_rds (std::string file, const ParseRdsOptions &options) | 
| template<class Writer > | |
| void | write_rds (const RdsFile &info, Writer &writer) | 
| void | write_rds (const RdsFile &info, const char *path) | 
| void | write_rds (const RdsFile &info, std::string path) | 
Parse an RDS file in C++.
| typedef RdsFile rds2cpp::Parsed | 
Typedef for back-compatibility.
      
  | 
  strong | 
Data types within R.
Values from 0 to 25 were taken from the R internals documentation. Of particular interest are the following:
NIL is R's NULL.ENV is an R environment.LGL is a logical vector.INT is an integer vector.REAL is a double vector.CPLX is a complex vector.STR is a string vector (also known as a character vector in R). Do not confuse this with CHAR, which refers to an internal representation of a single string.VEC is an ordinary R list. Do not confuse this with LIST, which refers to a pairlist.Values from 238 to 255 were determined by inspecting the R source code.
      
  | 
  strong | 
Encoding options for R strings.
| RdsFile rds2cpp::parse_rds | ( | Reader_ & | reader, | 
| const ParseRdsOptions & | options ) | 
Parse the contents of an RDS file.
| Reader_ | A byteme::Reader class, or any class with a compatible interface. | 
| reader | Instance of a Reader class, containing the contents of the RDS file.  | 
| options | Further options for parsing. | 
RdsFile object containing the contents of the RDS file. 
      
  | 
  inline | 
Parse the contents of an RDS file.
| file | Path to an RDS file. | 
| options | Further options for parsing. | 
RdsFile object containing the contents of file. 
      
  | 
  inline | 
Write an R object to a Gzip-compressed RDS file.
| info | Information about the RDS file to be written, including a pointer to a valid RObject.  | 
| path | Path to the output file. | 
      
  | 
  inline | 
Write an R object to a Gzip-compressed RDS file.
| info | Information about the RDS file to be written, including a pointer to a valid RObject.  | 
| path | Path to the output file. | 
| void rds2cpp::write_rds | ( | const RdsFile & | info, | 
| Writer & | writer ) | 
Convert an R object into the RDS format and write it to a specified output.
| Writer | A byteme::Writer class, or any class with a compatible interface. | 
| info | Information about the RDS file to be written, including a pointer to a valid RObject.  | 
| writer | Instance of a Writer class, where the RDS file is to be written.  |