runtime.rs

 1use std::collections::HashSet;
 2
 3use mlua::{FromLua, Lua, ToLua, Value};
 4
 5pub type Interface = HashSet<String>;
 6
 7pub trait Runtime
 8where
 9    Self: Sized,
10{
11    type Module;
12
13    fn init(plugin: Self::Module) -> Option<Self>;
14    fn interface(&self) -> Interface;
15    // fn val<'a, T>(&'a self, name: String) -> Option<T>;
16    // fn call<'a, A: MyFromLua<'a>, R>(&'a mut self, name: String, arg: A) -> Option<R>;
17}