Add a codegen error type to avoid unwraps
diff --git a/codegen/src/fold.rs b/codegen/src/fold.rs
index 7cadf20..b9f31bb 100644
--- a/codegen/src/fold.rs
+++ b/codegen/src/fold.rs
@@ -1,3 +1,4 @@
+use crate::error::Result;
 use crate::{file, full, gen};
 use proc_macro2::{Ident, Span, TokenStream};
 use quote::quote;
@@ -225,7 +226,7 @@
     });
 }
 
-pub fn generate(defs: &Definitions) {
+pub fn generate(defs: &Definitions) -> Result<()> {
     let (traits, impls) = gen::traverse(defs, node);
     let full_macro = full::get_macro();
     file::write(
@@ -256,5 +257,6 @@
 
             #impls
         },
-    );
+    )?;
+    Ok(())
 }