use std::path::PathBuf;
use thiserror::Error;
#[derive(Error, Debug)]
pub enum Error {
#[error(transparent)]
Yaml(#[from] serde_yaml::Error),
#[error(transparent)]
IO(#[from] std::io::Error),
}
pub type Result<T> = std::result::Result<T, Error>;
pub fn from_yaml_file(path: &PathBuf) -> Result<crate::Tree> {
let f = std::fs::File::open(path)?;
let tree_builder: crate::TreeBuilder = serde_yaml::from_reader(f)?;
Ok(tree_builder.create()?)
}
pub fn from_yaml_str(content: &str) -> Result<crate::Tree> {
let tree_builder: crate::TreeBuilder = serde_yaml::from_str(content)?;
Ok(tree_builder.create()?)
}
pub const fn default_drop() -> bool {
true
}