serial_config {nanonext} | R Documentation |
Create Serialization Configuration
Description
Returns a serialization configuration, which may be set on a Socket for custom serialization and unserialization of non-system reference objects, allowing these to be sent and received between different R sessions. Once set, the functions apply to all send and receive operations performed in mode 'serial' over the Socket, or Context created from the Socket.
Usage
serial_config(class, sfunc, ufunc)
Arguments
class |
a character string (or vector) of the class of object custom
serialization functions are applied to, e.g. |
sfunc |
a function (or list of functions) that accepts a reference
object inheriting from |
ufunc |
a function (or list of functions) that accepts a raw vector and returns a reference object. |
Details
This feature utilises the 'refhook' system of R native serialization.
Value
A list comprising the configuration. This should be set on a Socket
using opt<-()
with option name "serial"
.
Examples
cfg <- serial_config("test_cls", function(x) serialize(x, NULL), unserialize)
cfg
cfg <- serial_config(
c("class_one", "class_two"),
list(function(x) serialize(x, NULL), function(x) serialize(x, NULL)),
list(unserialize, unserialize)
)
cfg
s <- socket()
opt(s, "serial") <- cfg
# provide an empty list to remove registered functions
opt(s, "serial") <- list()
close(s)