• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 use std::fmt;
2 
3 pub type Result<T> = std::result::Result<T, Error>;
4 
5 #[derive(Copy, Clone, Eq, PartialEq, Debug)]
6 pub enum Error {
7     BadAbsolutePath,
8     BadRelativePath,
9     CannotFindBinaryPath,
10     CannotGetCurrentDir,
11     CannotCanonicalize,
12 }
13 
14 impl std::error::Error for Error {}
15 
16 impl fmt::Display for Error {
fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result17     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
18         match self {
19             Error::BadAbsolutePath => write!(f, "bad absolute path"),
20             Error::BadRelativePath => write!(f, "bad relative path"),
21             Error::CannotFindBinaryPath => write!(f, "cannot find binary path"),
22             Error::CannotGetCurrentDir => write!(f, "cannot get current directory"),
23             Error::CannotCanonicalize => write!(f, "cannot canonicalize path"),
24         }
25     }
26 }
27