use serde::Serialize;
use std::{fs, io, path::PathBuf};
pub struct Info {
info_path: PathBuf,
}
impl Info {
pub fn new(info_path: PathBuf) -> Info {
Info { info_path }
}
pub fn write_to_json_file<T: Serialize>(&self, path: String, data: T) -> io::Result<()> {
let path = self.info_path.join(path);
let json = serde_json::to_string(&data).map_err(|err| {
io::Error::new(
io::ErrorKind::Other,
format!("Failed to serialize data: {}", err),
)
})?;
fs::write(path, json)
}
}