use heromodels::db::hero::OurDB; use heromodels::db::{Collection, Db}; use heromodels::models::object::Object; use macros::{register_authorized_create_by_id_fn, register_authorized_get_by_id_fn}; use rhai::{exported_module, Engine, EvalAltResult, FuncRegistration, Module}; use std::sync::Arc; pub fn register_object_fns(engine: &mut Engine) { let mut module = Module::new(); register_authorized_get_by_id_fn!( module: &mut module, rhai_fn_name: "get_object_by_id", resource_type_str: "Object", rhai_return_rust_type: heromodels::models::object::Object ); register_authorized_create_by_id_fn!( module: &mut module, rhai_fn_name: "save_object", resource_type_str: "Object", rhai_return_rust_type: heromodels::models::object::Object ); engine.register_global_module(module.into()); engine.register_type_with_name::("Object"); }