From 3378c0c3704e1b85f23459fc1273186ec9ecbd8a Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Tue, 29 Dec 2020 01:25:30 -0800 Subject: add a FromStr instance for GenericPathComponent, and a new type PathError --- src/path/error.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/path/error.rs') diff --git a/src/path/error.rs b/src/path/error.rs index 1162a3b..0ee5423 100644 --- a/src/path/error.rs +++ b/src/path/error.rs @@ -8,11 +8,18 @@ pub enum DirectoryNameError { ContainsSlash(String), } +#[derive(Clone,Debug,Eq,Hash,Ord,PartialEq,PartialOrd)] +pub enum PathError { + Parse(String), +} + impl std::error::Error for FileNameError { } impl std::error::Error for DirectoryNameError { } +impl std::error::Error for PathError { } + impl std::fmt::Display for FileNameError { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { @@ -33,3 +40,12 @@ impl std::fmt::Display for DirectoryNameError { } } +impl std::fmt::Display for PathError { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + PathError::Parse(s) => + f.write_fmt(format_args!("Syntax error in path: {}", s)), + } + } +} + -- cgit 1.4.1