Add a codegen error type to avoid unwraps
diff --git a/codegen/src/version.rs b/codegen/src/version.rs
index fab7907..7ccca60 100644
--- a/codegen/src/version.rs
+++ b/codegen/src/version.rs
@@ -1,15 +1,16 @@
+use crate::error::Result;
use semver::Version;
use serde::Deserialize;
use std::fs;
use std::path::Path;
-pub fn get() -> Version {
+pub fn get() -> Result<Version> {
let codegen_root = Path::new(env!("CARGO_MANIFEST_DIR"));
let syn_cargo_toml = codegen_root.join("../Cargo.toml");
- let manifest = fs::read_to_string(syn_cargo_toml).unwrap();
- let parsed: Manifest = toml::from_str(&manifest).unwrap();
- parsed.package.version
+ let manifest = fs::read_to_string(syn_cargo_toml)?;
+ let parsed: Manifest = toml::from_str(&manifest)?;
+ Ok(parsed.package.version)
}
#[derive(Debug, Deserialize)]