use alloc::borrow::Cow;
pub trait NormalizeNewlines<'a> {
fn normalize_newlines(self) -> Cow<'a, str>;
}
impl<'a> NormalizeNewlines<'a> for &'a str {
#[inline]
fn normalize_newlines(self) -> Cow<'a, str> {
crate::newlines::replace_newlines_with(self, b'\n')
}
}
impl<'a> NormalizeNewlines<'a> for Cow<'a, str> {
#[inline]
fn normalize_newlines(self) -> Cow<'a, str> {
match self {
Cow::Borrowed(s) => s.normalize_newlines(),
Cow::Owned(s) => {
Cow::Owned(crate::cow_into_owned!(s, s.as_str().normalize_newlines(),))
},
}
}
}