from_as_file/
fromasfile.rs1use std::error::Error;
2use std::path::Path;
3
4pub trait FromFile<RHS = Self> {
5 type Error: Error;
6
7 fn from_file<P: AsRef<Path>>(path: P) -> Result<RHS, Self::Error>
8 where
9 for<'de> Self: serde::Deserialize<'de>;
10}
11
12pub trait AsFile {
13 type Error: Error;
14
15 fn as_file<P: AsRef<Path>>(&self, path: P) -> Result<(), Self::Error>
16 where
17 Self: serde::Serialize;
18
19 fn as_file_pretty<P: AsRef<Path>>(&self, path: P) -> Result<(), Self::Error>
20 where
21 Self: serde::Serialize;
22}