1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-27 19:17:43 +00:00

Fix the implementation of Display and TryFrom<&str> for Teletype

Fixes #7732 and fixes #7733
This commit is contained in:
Tom Schuster 2025-04-12 23:24:49 +02:00 committed by Sylvestre Ledru
parent aa262d8535
commit 8f9763fa52

View file

@ -20,9 +20,9 @@ pub enum Teletype {
impl Display for Teletype {
fn fmt(&self, f: &mut Formatter) -> fmt::Result {
match self {
Self::Tty(id) => write!(f, "/dev/pts/{id}"),
Self::TtyS(id) => write!(f, "/dev/tty{id}"),
Self::Pts(id) => write!(f, "/dev/ttyS{id}"),
Self::Tty(id) => write!(f, "/dev/tty{id}"),
Self::TtyS(id) => write!(f, "/dev/ttyS{id}"),
Self::Pts(id) => write!(f, "/dev/pts/{id}"),
Self::Unknown => write!(f, "?"),
}
}
@ -32,10 +32,6 @@ impl TryFrom<String> for Teletype {
type Error = ();
fn try_from(value: String) -> Result<Self, Self::Error> {
if value == "?" {
return Ok(Self::Unknown);
}
Self::try_from(value.as_str())
}
}
@ -44,6 +40,10 @@ impl TryFrom<&str> for Teletype {
type Error = ();
fn try_from(value: &str) -> Result<Self, Self::Error> {
if value == "?" {
return Ok(Self::Unknown);
}
Self::try_from(PathBuf::from(value))
}
}