Skip to content

extendr/helloextendr

Repository files navigation

Minimal Example of Calling Rust from R

R build status License: MIT

This is a template package to demonstrate how to call Rust from R using the extendr-api crate.

Installation

Before you can install this package, you need to install a working Rust toolchain. We recommend using rustup.

On Windows, you'll also have to add the x86_64-pc-windows-gnu target:

rustup target add x86_64-pc-windows-gnu

Once Rust is working, you can install this package via:

remotes::install_github("extendr/helloextendr")

After installation, the following should work:

library(helloextendr)

hello_world()
#> [1] "Hello world!"

Development

Install rextendr

You will need rextendr package to generate wrappers. Please install it before proceeding to the next step.

remotes::install_github("extendr/rextendr")

Generate wrappers

When you make either of the following changes to the Rust source code, you'll need to regenerate the wrappers.

  • add a new function
  • modify the signature of an existing function
  • modify the documentation written on Rust code (on the lines starting with ///)

This can be done by:

rextendr::document()

Which will compile the Rust code as well as updating documentation.

Creating your own project

For a fully worked out demonstration of how to create a Rust + R library see here.

About

Minimal Example of the Rust extendr Crate

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published