Learn R Programming

⚠️There's a newer version (0.4.24) of this package.Take me there.

RProtoBuf

R Interface to Google Protocol Buffers

What are Protocol Buffers?

A serialization format developed by Google and used widely within Google, and by numerous other projects. Quoting from the official website:

Protocol buffers are Google's language-neutral, platform-neutral,

extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages.

Protocol Buffers natively support C++, C#, Go, Java and Python. Many other languages are supported via contributed extensions. This package adds support for R.

Installation

You can either install from source via this repo, or install the CRAN package the usual way from R via

install.packages("RProtoBuf")

but do make sure you have the system requirements covered when building from source.

Under Debian/Ubuntu you may need

sudo apt-get install protobuf-compiler libprotobuf-dev libprotoc-dev 

with similar commands on other operating systems or distributions.

Documentation

The package contains two pdf vignettes; the second one corresponds to our JSS paper.

Authors

Romain Francois, Dirk Eddelbuettel, Murray Stokely and Jeroen Ooms

License

GPL (>= 2)

Copy Link

Version

Install

install.packages('RProtoBuf')

Monthly Downloads

4,043

Version

0.4.14

License

GPL (>= 2)

Issues

Pull Requests

Stars

Forks

Maintainer

Dirk Eddelbuettel

Last Published

June 30th, 2019

Functions in RProtoBuf (0.4.14)

FileInputStream-methods

Creates an FileInputStream
FileInputStream-class

Class "FileInputStream"
RpcHTTP-class

Class "RpcHTTP"
RProtoBuf-package

R Interface to the Protocol Buffers API
FileDescriptor-class

Class "FileDescriptor"
as.list.Message

Grab the protocol buffer message as an R list
asMessage

coerce an object to a protobuf message
EnumDescriptor-class

Class "EnumDescriptor"
SetCloseOnDelete-methods

set the close on delete behavior
ServiceDescriptor-class

Class "ServiceDescriptor"
Descriptor-class

Class "Descriptor"
Message-class

Class "Message"
descriptor-methods

Get the descriptor of a message
containing_type-methods

Gets the message type descriptor that contains a descriptor
enum_type_count-methods

The number of enum types
enum_type-methods

Extract an enum type descriptor for a nested type
read-methods

Read a protocol buffer message from a connection
field_count-methods

The number of fields
FileOutputStream-class

Class "FileOutputStream"
fileDescriptor-methods

gets the file descriptor of an object
ZeroCopyOutputStream-class

Virtual Class "ZeroCopyOutputStream"
MethodDescriptor-class

Class "MethodDescriptor"
fetch-methods

Fetch content of a repeated field
add-methods

add elements of a repeated field of a message
field-methods

Extract a field descriptor
number-methods

Gets the declared tag number of a field
nested_type_count-methods

The number of fields
EnumValueDescriptor-class

Class "EnumValueDescriptor"
Skip-methods

Skips a number of bytes
FieldDescriptor-class

Class "FieldDescriptor"
ZeroCopyInputStream-class

Virtual Class "ZeroCopyInputStream"
readASCII-methods

read a message in ASCII format
ConnectionOutputStream-methods

Creates an ConnectionOutputStream
Next-methods

Obtains a chunk of data from the stream
P

Protocol Buffer descriptor importer
merge-methods

Merge two messages of the same type
FileOutputStream-methods

Creates an FileOutputStream
GetErrno-methods

Get the error number for an I/O error
set-methods

set a subset of values of a repeated field of a message
label-methods

Gets the label of a field
size-methods

Size of a message field
bytesize-methods

The number of bytes taken by a message
clear-methods

Clear a field or all fields of the message and set them to their default values
isInitialized-methods

Indicates if a protocol buffer message is initialized
sizegets

Set the size of a field
is_extension-methods

Indicates if a field descriptor is an extension
swap-methods

swap elements of a repeated field of a message
completion

Completion support for protocol buffer messages and descriptors
invoke-methods

invoke a protobuf rpc method
has-methods

Indicates if an object has the given field set
clone-methods

Clone protocol buffer messages
readProtoFiles

protocol buffer descriptor importer
type-methods

Gets the type or the C++ type of a field
serialize_pb

Serialize R object to Protocol Buffer Message.
with.Message

with and within methods for protocol buffer messages
nested_type-methods

Extract a message type descriptor for a nested type
name

Name or full name of a descriptor
ArrayOutputStream-methods

Creates an ArrayOutputStream
ConnectionInputStream-class

Class "ConnectionInputStream"
ArrayInputStream-methods

Creates an ArrayInputStream
ConnectionOutputStream-class

Class "ConnectionOutputStream"
ArrayInputStream-class

Class "ArrayInputStream"
BackUp-methods

Backs up a number of bytes from a stream
ArrayOutputStream-class

Class "ArrayOutputStream"
ConnectionInputStream-methods

Creates an ConnectionInputStream
ByteCount-methods

The number of bytes read/written since the object was created