#[derive(
Debug,
Copy,
Clone,
PartialEq,
Eq,
strum_macros::Display,
strum_macros::EnumString,
)]
pub enum FileFormatOption {
#[strum(serialize = "dos")]
Dos,
#[strum(serialize = "unix")]
Unix,
#[strum(serialize = "mac")]
Mac,
}
impl From<EndOfLineOption> for FileFormatOption {
fn from(value: EndOfLineOption) -> Self {
match value {
EndOfLineOption::Crlf => FileFormatOption::Dos,
EndOfLineOption::Lf => FileFormatOption::Unix,
EndOfLineOption::Cr => FileFormatOption::Mac,
}
}
}
#[derive(
Debug,
Copy,
Clone,
PartialEq,
Eq,
strum_macros::Display,
strum_macros::EnumString,
)]
pub enum EndOfLineOption {
#[strum(serialize = "\r\n")]
Crlf,
#[strum(serialize = "\n")]
Lf,
#[strum(serialize = "\r")]
Cr,
}
impl From<FileFormatOption> for EndOfLineOption {
fn from(value: FileFormatOption) -> Self {
match value {
FileFormatOption::Dos => EndOfLineOption::Crlf,
FileFormatOption::Unix => EndOfLineOption::Lf,
FileFormatOption::Mac => EndOfLineOption::Cr,
}
}
}