wll-rs

crates.io doc.rs CI

Wolfram LibraryLink interface for Rust

Inspired by wll-interface.

Purpose:

```rust // lib.rs use wll::{Error, ErrorKind, Result};

[wll::setup]

fn setup() {}

[wll::teardown]

fn teardown() {}

// export function named wll_add_two

[wll::export]

fn addtwo(a: isize, b: isize)->Result { a.checkedadd(b) .okorelse(|| Error::from(ErrorKind::NumericalError)) }

[wll::export(factorial)]

fn fac(n: usize) -> Result { Ok(if n == 0 { 1 } else { n * fac(n - 1)? }) } ```