Files
own_assist/common/src/config_loader.rs
T
milan ee17e74753 restructure into multiple crates
add mcp server collection
2026-04-07 00:06:13 +02:00

16 lines
476 B
Rust

use std::path::Path;
use thiserror::Error;
use serde::de::DeserializeOwned;
#[derive(Debug, Error)]
pub enum ConfigLoadingError{
#[error(transparent)]
IoError(#[from] std::io::Error),
#[error(transparent)]
ParseError(#[from] toml::de::Error),
}
pub fn config_from_file<T: DeserializeOwned>(filepath: impl AsRef<Path>) -> Result<T, ConfigLoadingError> {
let toml_string: String = std::fs::read_to_string(filepath)?;
Ok(toml::from_str(&toml_string)?)
}