pub trait Runnable { // Required methods fn name(&self) -> String; fn run(&mut self, args: Vec<String>) -> Result<i32, String>; }