pub struct Evaluator { /* private fields */ }
Expand description
Evaluates mruby codes.
Example
use minutus::types::*;
let runtime = minutus::Evaluator::build();
// prints [1,2,3] and returns `MrbValue` which holds `[1,2,3]`
let mruby_array = runtime.evaluate("p [1,2,3]").unwrap();
let array = <Vec<i64>>::try_from_mrb(mruby_array).unwrap();
assert_eq!(vec![1,2,3], array);
// evaluates script and returns the value as String
let evaluated_string = runtime.eval_to::<String>("'this is mruby string!'").unwrap();
assert_eq!("this is mruby string!", evaluated_string);
Implementations§
source§impl Evaluator
impl Evaluator
pub fn build() -> Self
pub fn mrb(&self) -> *mut minu_state
sourcepub fn evaluate(&self, script: &str) -> MrbResult<MrbValue>
pub fn evaluate(&self, script: &str) -> MrbResult<MrbValue>
Evaluates script
in mruby world, and returns the last evaluated value.
sourcepub fn eval_to<RETVAL: TryFromMrb>(&self, script: &str) -> MrbResult<RETVAL>
pub fn eval_to<RETVAL: TryFromMrb>(&self, script: &str) -> MrbResult<RETVAL>
Evaluates script
in mruby world, and converts the last evaluated value into the specified type.
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for Evaluator
impl !Send for Evaluator
impl !Sync for Evaluator
impl Unpin for Evaluator
impl UnwindSafe for Evaluator
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more