pub(crate) fn generate( formats: Vec<&InstructionFormat>, all_inst: &Vec<Rc<InstructionContent>>, opcode_filename: &str, inst_builder_filename: &str, isle_opt_filename: &str, isle_lower_filename: &str, out_dir: &str, isle_dir: &str) -> Result<(), Error>