Package 'RApiSerialize'

Title: R API Serialization
Description: Access to the internal R serialization code is provided for use by other packages at the C function level by using the registration of native function mechanism. Client packages simply include a single header file RApiSerializeAPI.h provided by this package. This packages builds on the Rhpc package by Ei-ji Nakama and Junji Nakano which also includes a (partial) copy of the file src/main/serialize.c from R itself. The R Core group is the original author of the serialization code made available by this package.
Authors: Dirk Eddelbuettel, Ei-ji Nakama, Junji Nakano, and R Core (original code)
Maintainer: Dirk Eddelbuettel <[email protected]>
License: GPL (>= 2)
Version: 0.1.3
Built: 2024-06-19 04:01:40 UTC

Help Index

R API for Serialization


This package provides other packages with access to the internal R serialization code. Access is provided at the C function level via the registered function facility

For convenience and testing purposes, two wrapper functions are also provided at the R level.


serializeToRaw(obj, version=2, xdr=TRUE)



An R object which is going to (un)serialized by the corresponding function.


An integer selection the R serialization format. Default is 2, and values 2 or 3 are currently supported.


A logical value selection (portable) XDR encoding which is the default. Use FALSE for speed-up suitable for common little-endian system at a loss of portability.


The C code in this package is taken from R source code, where it provided for use by R only in a way that renders it inaccessible to other packages.

This package aims to fill this gap by providing access to the same functionality, at the cost of making a copy.

To use the serialization and deserialization code provided here, a client package simply adds LinkingTo: RApiSerialize in its DESCRIPTION file and includes the header file RApiSerializeAPI.h.


Dirk Eddelbuettel put together this package, based on earlier work by Ei-ji Nakama and Junji Nakano who also included the C code from R for serialization in their Rhpc package. R Core wrote the underlying C code for use in R itself.

The package is maintained by Dirk Eddelbuettel.

See Also

The R source code in src/main/serialize.c.


## calling the R wrapper