🔨 Refactors panics to error returning
Signed-off-by: Ash Svitan <selfsigned-ash@proton.me>
This commit is contained in:
+2
-2
@@ -11,7 +11,7 @@ fn main() -> Result<(), Error> {
|
||||
pass::check_pass()?;
|
||||
rbw::check_rbw()?;
|
||||
|
||||
let vaults = pass::get_vaults().vaults;
|
||||
let vaults = pass::get_vaults()?.vaults;
|
||||
if vaults.len() <= 0 {
|
||||
return Err(Error::new(ErrorKind::Other, "No vaults found"));
|
||||
}
|
||||
@@ -41,7 +41,7 @@ fn main() -> Result<(), Error> {
|
||||
}
|
||||
};
|
||||
|
||||
let items = pass::get_items(&vault).items;
|
||||
let items = pass::get_items(&vault)?.items;
|
||||
println!("{:?}", items[0]);
|
||||
println!("{}", items.len());
|
||||
|
||||
|
||||
+16
-4
@@ -74,12 +74,24 @@ pub fn check_pass() -> Result<(), Error> {
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
pub fn get_vaults() -> Vaults {
|
||||
pub fn get_vaults() -> Result<Vaults, Error> {
|
||||
let vaults_raw = sh::sh(format!("{} vault list --output json", EXECUTABLE));
|
||||
return serde_json::from_str(vaults_raw.as_str()).expect("Couldn't parse JSON");
|
||||
return match serde_json::from_str(vaults_raw.as_str()) {
|
||||
Ok(val) => Ok(val),
|
||||
Err(e) => Err(Error::new(
|
||||
ErrorKind::Other,
|
||||
format!("Couldn't get vaults: {e}"),
|
||||
)),
|
||||
};
|
||||
}
|
||||
|
||||
pub fn get_items(vault: &String) -> Items {
|
||||
pub fn get_items(vault: &String) -> Result<Items, Error> {
|
||||
let items_raw = sh::sh(format!("{} item list {} --output json", EXECUTABLE, vault));
|
||||
return serde_json::from_str(items_raw.as_str()).expect("Couldn't parse JSON");
|
||||
return match serde_json::from_str(items_raw.as_str()) {
|
||||
Ok(val) => Ok(val),
|
||||
Err(e) => Err(Error::new(
|
||||
ErrorKind::Other,
|
||||
format!("Couldn't get items: {e}"),
|
||||
)),
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user