pub trait OneFileMover { fn move(&self, destination: impl AsRef<Path>) -> Result<()>; }
fn move(&self, destination: impl AsRef<Path>) -> Result<()>
impl OneFileMover for OneFile