diff options
Diffstat (limited to 'src/format.rs')
-rw-r--r-- | src/format.rs | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/format.rs b/src/format.rs index b8ebd74..3030e0d 100644 --- a/src/format.rs +++ b/src/format.rs @@ -1,25 +1,27 @@ /* - Copyright 2023 Gabriel Bjørnager Jensen. + Copyright 2023-2024 Gabriel Bjørnager Jensen. - This file is part of AAS. + This file is part of eAS. - AAS is free software: you can redistribute it + eAS is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - AAS is distributed in the hope that it will + eAS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU - General Public License along with AAS. If not, + General Public License along with eAS. If not, see <https://www.gnu.org/licenses/>. */ +use crate::error::Error; + use enum_iterator::Sequence; use std::fmt::{Display, Formatter}; use std::str::FromStr; @@ -46,14 +48,16 @@ impl Default for Format { } impl FromStr for Format { - type Err = String; + type Err = Error; fn from_str(s: &str) -> Result<Self, Self::Err> { use Format::*; - return match s.to_string().to_lowercase().as_str() { + + let s = s.to_string().to_lowercase(); + return match s.as_str() { "elf" => Ok(Elf), - _ => Err(format!("invalid format \"{s}\"")), + _ => Err(Error::InvalidTargetFormat(s)), }; } } |