13 releases
0.2.0 | Feb 13, 2021 |
---|---|
0.1.11 | Oct 20, 2017 |
0.1.4 | May 19, 2016 |
#661 in Programming languages
57 downloads per month
Used in 3 crates
(via plugger-ruby)
32KB
716 lines
rurust
A Rust wrapper over the MRI Ruby VM.
Allows you to create a Ruby VM, eval
code, plug classes,
define modules, and insert C functions into the environment.
For a more high level library, take a look at plugger.
Examples
A simple REPL
extern fn callable_from_ruby() {
println!("Hello World!");
}
fn main() {
let mut vm = rurust::VM::new().unwrap();
vm.class("Rust").
method("hello_world", callable_from_ruby as *const _, 0).
method("foo", callable_from_ruby as *const _, 0).
build();
loop {
let mut line = String::new();
std::io::stdin().read_line(&mut line).unwrap();
let result = vm.eval(&line);
println!("{:?}", result);
}
}
Dependencies
~94KB