pub trait Instruction {
// Required methods
fn command_name(&self) -> &'static str;
fn start(
&self,
params: Vec<String>,
) -> Result<Box<dyn InstructionLineHandler>, ProcessorError>;
// Provided method
fn needs_closing(&self) -> bool { ... }
}