pub trait Object: Send + ObjectAddon {
fn as_any(&self) -> &dyn Any;
fn as_any_mut(&mut self) -> &mut dyn Any;
fn get_children(&self) -> Vec<usize>;
fn typename(&self) -> String { ... }
fn initialize(&mut self, _: &mut ObjectPool) { ... }
fn call(&self, _m: &mut Machine, _args: Vec<Value>, _c_index: u8) -> Value { ... }
fn store_at(&self, _m: &mut Machine, _args: Vec<Value>, _rindex: usize) { ... }
fn load_at(&self, _m: &mut Machine, _args: Vec<Value>, _rindex: usize) { ... }
}