pub trait Codegen { // Required method fn generate( &self, ast: Vec<Statement>, context: &mut Context, ) -> Result<String, String>; }