use crate::process::{new_screen, kill_screen}; use rhai::{Engine, Module, EvalAltResult}; fn screen_error_to_rhai_error(result: anyhow::Result) -> Result> { result.map_err(|e| { Box::new(EvalAltResult::ErrorRuntime( format!("Screen error: {}", e).into(), rhai::Position::NONE, )) }) } #[allow(dead_code)] pub fn register(engine: &mut Engine) { engine.register_fn("screen_new", |name: &str, cmd: &str| { screen_error_to_rhai_error(new_screen(name, cmd)) }); engine.register_fn("screen_kill", |name: &str| { screen_error_to_rhai_error(kill_screen(name)) }); }